我想定义一个设定半径的圆,要求用户输入x和y坐标,然后检查该点是否位于圆内。
这就是我现在正在使用的(距离公式)。
r = 1024
xc = r
yc = 6
def distance(x,y):
return ((x - xc)^2 + (y - yc)^2)^1/2
def check(x,y):
if distance(x,y) > r:
return 1;
else:
return 0;
有更有效的方法吗?
答案 0 :(得分:1)
我认为这也应该有效:
if (x-xc)**2+(y-yc)**2 < r**2:
return 1
else:
return 0
但它不是比你的代码更有效,稍微提高
答案 1 :(得分:0)
您可以将if .. else
删除为:
def check(x,y):
return ((x - xc)**2 + (y - yc)**2) < r**2