基本的Python编程,使用随机位置数组计算落在区域内的随机位置的概率

时间:2013-04-09 16:03:39

标签: python python-2.7

考虑一个100X100阵列。

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

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

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

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

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

    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)呢?我正在考虑使用布尔表达式(if,或)来做它,但我完全不确定它是否会起作用,如果它会怎么做。

1 个答案:

答案 0 :(得分:0)

这不是一个功课问题,是吗?

为了处理圈子业务,我会先检查一下这个点是否属于禁区。如果您的圆圈位于(0,0),则禁区区域为35 <= x**2 + y**2 <= 65