程序应该从用户那里得到两个号码。第一个数字是三角形的数量。第二个数字是每个三角形的行数。
这是基于我们刚刚做的一个正方形问题
numRows = input('Please enter the number of rows: ')
numRows = eval(numRows)
numAst = 1
for i in range(numRows):
print(numAst*'*')
numAst += 1
我不能为我的生活弄清楚如何让它制作三角形。我知道我需要某种外部循环来重启内循环,但我不知道该如何去做?
答案 0 :(得分:1)
首先,使用eval
将不安全的用户输入转换为整数会有点危险,所以我将其更改为int
。
其次,您只需要创建一个具有三角形数量值的嵌套循环,以重复内部循环X
次。当然,您需要更改内循环功能以改为打印三角形。
试试这个,看看你是否能从上面的解释中理解它:
numTris = input('Please enter the number of triangles: ')
numTris = int(numTris)
numRows = input('Please enter the number of rows: ')
numRows = int(numRows)
for _ in range(numTris):
for numAst in range(1, numRows + 1):
print(numAst * '*')
print('')
注意:变量_
通常用于您不打算使用的值。在这种情况下,我们只需要它来创建循环,但不要在循环中使用它。