python - 使用递归绘制正方形图案
问题描述
到目前为止,这是我在导师的大力帮助下编写的代码。
def square(t, x, y, side):
t.up()
t.goto(x-side/2, y+side/2)
t.down()
for i in range(4):
t.forward(side)
t.right(90)
def squares(t, x, y, size, n):
if n == 0:
return
if n >= 1:
square(t, x, y, size)
half = size / 2
squares(t, x - half, y + half, size / 2.2, n - 1)
squares(t, x + half, y + half, size / 2.2, n - 1)
squares(t, x + half, y - half, size / 2.2, n - 1)
squares(t, x - half, y - half, size / 2.2, n - 1)
s = Screen()
t = Turtle()
t.pensize(2)
squares(t, 0, 0, 200, 3)
s.exitonclick()
所以这个程序将绘制一个正方形,每个点有 4 个正方形,每个点有 4 个正方形。这是在辅导后的 1.5 小时内完成的,我的家伙因家庭原因不得不离开,我一个人无法完成。这是任务想要的。
所以我想要的是一个正方形,一个正方形,一个正方形,一个正方形
解决方案
我可以告诉你从你的辅导课中得到了很多...
只是改变
squares(t, 0, 0, 200, 3)
到
squares(t, 0, 0, 200, 5)
推荐阅读
- python-3.x - 需要更好的方法来使用 Gridfs 将 oracle blob 数据加载到 Mongodb 集合中
- python-3.x - 在包含匹配元素的数据框或矩阵中生成行列表
- junit - 为多个用户运行 Junit Test jar 时 Jmeter 执行失败
- python - 如何在 PIL ImageEnhance 模块中解决“合同”对象没有属性“过滤器”?
- c# - 如何使用输入参数调用存储过程并使用输出参数填充文本框?
- ios - viewController.view 不显示,但在 ViewDebugMode 时出现
- google-play - 如何修复“错误:在存储库容器上找不到参数 [] 的方法 google()。” 在安卓工作室 3.5
- css - 将子级扩展到父级可滚动内容的 100% 高度
- c# - 当前内容中不存在名称
- css - 如何将页脚推到内容很少的页面底部(弹性框或网格)