课后题咨询(小白咨询)
本帖最后由 chendonghao 于 2020-5-23 18:24 编辑为了达到这个效果
请输入一个整数:8
********
*******
******
*****
****
***
**
*
我开始是想的这个
print("请输入一个整数:", end = " ")
temp = input()
num = int(temp)
i = " * " * num
while num:
print(i)
i = i + " * "
num = num - 1
出来的效果是这样的
请输入一个整数: 8
********
*********
**********
***********
************
*************
**************
***************
>>>
然后我想这不快成了,换减号应该就可以了吧
print("请输入一个整数:", end = " ")
temp = input()
num = int(temp)
i = " * " * num
while num:
print(i)
i = i - " * "
num = num - 1
可是减号不行,效果是这样的
请输入一个整数: 8
********
Traceback (most recent call last):
File "E:/练习/1.py", line 7, in <module>
i = i - " * "
TypeError: unsupported operand type(s) for -: 'str' and 'str'
>>>
实际是运行不了
然后看了下正确答案,感觉没看懂
temp = input('请输入一个整数:')
number = int(temp)
while number:
i = number - 1
while i:
print(' ', end = '')
i = i - 1
j = number
while j:
print('*', end = '')
j = j - 1
print()
number = number - 1
本帖最后由 Twilight6 于 2020-5-23 18:28 编辑
num = int(input('请输入一个整数:'))
while num:
print(' '*(num-1)+'*'*num)
num = num - 1
这样即可 我们通过观察 空格的数量和 * 号的数量正好相差 1就得出上面的代码
标准答案的太麻烦,感觉反而不好理解{:10_278:} (其实是我懒了 嘿嘿)
楼上正解
Twilight6 发表于 2020-5-23 18:25
这样即可 我们通过观察 空格的数量和 * 号的数量正好相差 1就得出上面的代码
标准答案的太麻烦,感 ...
你为什么每次都要用粗体字{:10_277:} KevinHu 发表于 2020-5-23 18:29
你为什么每次都要用粗体字
我自己看着感觉很舒服。。。我就以为你们看着也毕竟舒服吧嘿嘿
页:
[1]