0

考虑一个 100X100 阵列。

  • 在这样的数组中生成一个包含数千个随机位置的数组,例如 (3,75) 和 (56, 34)。
  • 计算您的一个随机位置在任何(直)边缘的 15 像素范围内的频率

(我已经完成了上面的这两部分)但我需要帮助:

  1. 计算您的随机位置之一落在半径为 50 像素的圆的(任一侧)15 像素内的频率,并将结果写入屏幕,例如,阵列中平均 N% 的位置落在该区域 [N是介于 0 和 100 之间的数字] 请注意,拐角处的坐标在圆的 15 像素范围内,那么它们应该包含在其中(如果它们距离超过 15 像素,那么它们不应该包含在内)。

  2. 添加代码,向用户请求您的数组中的位置,然后在该位置落在该区域时提醒他们,例如警告:您选择的位置落在圆的边缘附近。

我该怎么做呢?我已经有了使用此代码的随机位置数组:

from pylab import *
import math as m
from numpy import *
from random import randrange
N = 3000
coords_array = array([randrange(100) for _ in range(2 * N)]).reshape(N, 2)

那么我该如何去做第(1)和(2)部分呢?我正在考虑使用布尔表达式(如果,或)来做到这一点,但我完全不确定它是否会起作用,以及它是否会如何做到这一点。

4

1 回答 1

0

这不是作业问题,是吗?

为了处理圈子业务,我会先检查该点是否在禁区范围内。如果你的圆以 (0,0) 为中心,那么禁区是35 <= x**2 + y**2 <= 65

于 2013-04-09T16:24:39.650 回答