Python表白复杂爱心代码
时间: 2023-03-20 09:01:09 浏览: 179
表白代码使 Python画出小人发射爱心的代码
5星 · 资源好评率100%
以下是Python打印出复杂的爱心的代码:
```python
import math
def heart(x, y):
"""
返回一个点 (x, y) 是否在爱心中
"""
# 计算点 (x, y) 到心形上每个分段的距离
# 注意到心形分成了上下两个部分
# 所以需要分别计算距离再取min
dist1 = math.sqrt((x - 5) ** 2 + (y - 5) ** 2)
dist2 = math.sqrt((x - 5) ** 2 + (y - 4) ** 2)
dist3 = math.sqrt((x - 5) ** 2 + (y - 3) ** 2)
dist4 = math.sqrt((x - 5) ** 2 + (y - 2) ** 2)
dist5 = math.sqrt((x - 5) ** 2 + (y - 1) ** 2)
dist6 = math.sqrt((x - 6) ** 2 + (y - 0) ** 2)
dist7 = math.sqrt((x - 7) ** 2 + (y - 0) ** 2)
dist8 = math.sqrt((x - 8) ** 2 + (y - 1) ** 2)
dist9 = math.sqrt((x - 9) ** 2 + (y - 2) ** 2)
dist10 = math.sqrt((x - 9) ** 2 + (y - 3) ** 2)
dist11 = math.sqrt((x - 9) ** 2 + (y - 4) ** 2)
dist12 = math.sqrt((x - 9) ** 2 + (y - 5) ** 2)
dist13 = math.sqrt((x - 8) ** 2 + (y - 6) ** 2)
dist14 = math.sqrt((x - 7) ** 2 + (y - 7) ** 2)
dist15 = math.sqrt((x - 6) ** 2 + (y - 8) ** 2)
dist16 = math.sqrt((x - 5) ** 2 + (y - 9) ** 2)
dist17 = math.sqrt((x - 4) ** 2 + (y - 8) ** 2)
dist18 = math.sqrt((x - 3) ** 2 + (y - 7) ** 2)
dist19 = math.sqrt((x - 2) ** 2 + (y - 6) ** 2)
dist20 = math.sqrt((x - 1) ** 2 + (y - 5) ** 2)
# 计算两个圆的距离
dist_c1 = math.sqrt((x - 3) ** 2 + (y - 5) ** 2)
dist_c2 = math.sqrt((x - 7) ** 2 + (y - 5) ** 2)
# 判断点是否在爱心内
if (dist1 + dist2 + dist3 + dist4 + dist5 + dist6 + dist7 + dist8 + dist9 + dist10 + dist11 + dist12 + dist13 + dist14 + dist15 + dist16 + dist17 + dist18 +
阅读全文