优化python画五角星的代码

img

img

img

img

本代码需要输入多角星的边长和多角星角的个数,怎样在输入了多角星的边长后再输入多角星角的个数?

输入多角星角的个数的input中多了个t

img

并且你 side_angle = 180-180/side_num 计算的角度只适用于奇数角
对于偶数角,角数能被4整除的是 side_angle = 180-360/side_num
偶数角,角数不能被4整除的是 side_angle = 180-360/(side_num/2)
你题目的解答代码如下:

import turtle
side_length = int(input("请输入多角星的边长:"))
side_num = int(input("请输入多角星的角数:"))
if side_num % 2 == 1:
    side_angle = 180-180/side_num
elif side_num % 4 == 0:
    side_angle = 180-360/side_num
else:
    side_angle = 180-360/(side_num/2)
turtle.pensize(3)
turtle.pencolor("red")
for i in range(side_num):
    turtle.forward(side_length)
    turtle.right(side_angle)

turtle.done()

7角星

img

8角星

img

10角星

img

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img

第十行你这打错了吧 应该是input多打了字母t

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632