基本上想要制作这两种模式,都取决于n(1 的行数和 2 的三角形数),这两种情况都是 5。请参阅下面的图片以获取所需的输出。
这是我想出的第一个。在内循环中的每次迭代中向下绘制点,向左添加一个点。理想情况下,我希望它使点从左到右,然后在内部循环中的每次迭代添加一个点。
def drawTriangularSeries(myTurtle, n):
sideLength = 10
x = 0
y= 200
myTurtle.penup()
myTurtle.goto(x, y)
for row in range(n+1):
for col in range(row):
myTurtle.dot()
myTurtle.back(sideLength)
myTurtle.back(sideLength)
y -= sideLength
myTurtle.goto(x, y)
这是我为第二个所做的。每当它要绘制下一个三角形时,它都会将其绘制在前一个三角形的下方。
def drawTriangle(myTurtle, dotsPerSide, startX, startY):
sideLength = 10
x = startX
y = startY
myTurtle.penup()
myTurtle.goto(x, y)
for i in range(dotsPerSide+1):
x += sideLength * i
y += sideLength * i
myTurtle.goto(x, y)
for j in range(i + 1):
for k in range(j):
myTurtle.dot()
myTurtle.back(sideLength)
myTurtle.back(sideLength)
y -= sideLength
myTurtle.goto(x, y)
如何重写循环以使其生成图片?这是当前输出: 当前输出 这是它应该的样子,其中问题一是制作最后一个三角形,问题二是制作整个系列 正确输出
