'''
1.定义⼀个点类 Pointer
属性是横向坐标 x与 纵向坐标 y
定义⼀个圆类 Circle
属性有圆⼼点 cp 与 半径 radius
⽅法有:
1.求圆的⾯积
2.求圆的周⻓
3.求指定点与圆的关系
提示:关系有三种 【圆内 圆外 圆上】
设计到的数学公式:指定点与圆⼼点之间的距离 与 圆的半径进⾏⽐较
'''
import math
class Pointer:
def __init__(self,x,y):
self.x=x
self.y=y
class Circle:
def __init__(self,cp,radius):
self.cp=cp
self.radius=radius
def num1(self):
s=math.pi*self.radius**2
c=2*math.pi*self.radius
return f'圆的周长{c},圆的面积{s}'
def num2(self,obj):
b=((obj.x-p3.x)**2+(obj.y-p3.y)**2)**1/2
if b>self.radius:
print('点在圆外')
elif b<self.radius:
print('点在园内')
else:
print('点在圆上')
p1=Pointer(0,0)
p2=Circle(p1,5)
p3=Pointer(1,2)
print(p2.num1())
p2.num2(p1)
python基础类解决圆的问题
最新推荐文章于 2022-10-28 20:53:54 发布