3 回答
TA贡献1871条经验 获得超8个赞
您在这里有多个问题,并且您似乎很困惑,因为您发布了很多问题,其中包含您正在处理的实际问题的点点滴滴。
该while子句可能不是必需的,因为您只想运行一次。您也可以在用户输入后检查数字是奇数还是偶数,因此无需询问两次。所以一个工作版本将是:
box_size=input("box_size:" )
box_size=int(box_size)
if box_size % 2:
print('*' * box_size)
for i in range(box_size-2):
print ('*' + ' ' * (box_size-2) + '*')
print('*' * box_size)
else:
for row in range(box_size):
for col in range(box_size*2):
print('*', end='')
print()
print()
TA贡献1802条经验 获得超5个赞
刚刚对您的代码进行了修改。
while True:
box_size=int(input("box_size:" ))
if box_size == 0:
break
elif box_size % 2:
print(box_size * '*')
for col in range(box_size-2):
print ('*' + (box_size-2) * ' ' + '*')
print(box_size * '*')
else:
for row in range(box_size):
for col in range(box_size*2):
print('*', end='')
print()
print()
TA贡献1827条经验 获得超4个赞
你可以试试这个
flag= False
while not flag:
box_size=int(input("box_size:" ))
if box_size == 0:
flag=True
elif not box_size % 2:
for row in range(box_size):
print(2*box_size*'*')
else:
print(2*box_size*'*')
for row in range(1,box_size-1):
print('*'+2*(box_size-1)*' '+'*')
print(2*box_size*'*')
输出:
box_size:6
************
************
************
************
************
************
box_size:5
**********
* *
* *
* *
**********
box_size:0
添加回答
举报