0

プログラムは、ユーザーから 2 つの数値を取得する必要があります。最初の数字は三角形の数です。2 番目の数値は、三角形ごとの行数です。

これは、先ほど行った正方形の問題に基づいています。

numRows = input('Please enter the number of rows: ')
numRows = eval(numRows)
numAst  = 1 
for i in range(numRows):
    print(numAst*'*')
    numAst += 1

私は一生、三角形を作る方法を理解することはできません。内側のループを再起動するには、何らかの外側のループが必要であることはわかっていますが、その方法がわかりません。

4

1 に答える 1

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('')

注: 変数_は通常、使用する予定のない値に対して慣例により使用されます。この場合、ループを作成するためにのみ必要ですが、ループ内では使用しません。

于 2012-07-04T11:07:28.083 に答える