定义一个圆类,定义一个判别两个圆关系的函数
时间: 2024-01-01 17:06:24 浏览: 25
好的,我来帮你定义一个圆类和判别两个圆关系的函数。
首先是圆类的定义:
```python
class Circle:
def __init__(self, x, y, r):
self.x = x # 圆心横坐标
self.y = y # 圆心纵坐标
self.r = r # 半径
```
接下来是判别两个圆关系的函数,我们可以根据两个圆之间的距离和半径之差来判断它们的关系:
```python
import math
def circle_relation(circle1, circle2):
# 计算两圆心之间的距离
distance = math.sqrt((circle1.x - circle2.x) ** 2 + (circle1.y - circle2.y) ** 2)
# 计算半径之和
radius_sum = circle1.r + circle2.r
# 计算半径之差
radius_diff = abs(circle1.r - circle2.r)
# 判断两个圆的关系
if distance < radius_diff:
return "内含"
elif distance == radius_diff:
return "内切"
elif distance < radius_sum:
return "相交"
elif distance == radius_sum:
return "外切"
else:
return "相离"
```
这个函数接受两个 Circle 类的实例作为参数,返回值为两个圆的关系,包括 "内含"、"内切"、"相交"、"外切" 和 "相离"。