Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで数値のピラミッドを生成する方法|基本パターンをコード例付きで解説

Pythonでは、数値を使ったピラミッド(三角形のパターン)を生成する方法がいくつかあります。この記事では、最も基本的な3つのパターンを、実際のコード例と出力結果とともにわかりやすく解説します。

パターン1:各行で1から連番を出力する

まずは基本となる形です。外側のループで行数を制御し、内側のループで各行に出力する数字の個数を制御します。内側のループ変数 j に1を足すことで、1から始まる連番を表示しています。

for i in range(5):
    for j in range(i + 1):
        print(j + 1, end="")
    print("")

出力結果

1
12
123
1234
12345

パターン2:全体を通して連続した数字を出力する

次に、行をまたいで数字が連続するパターンです。変数 start を用意し、数字を1つ出力するたびに1ずつ増やしていくことで実現できます。

start = 1
for i in range(5):
    for j in range(i + 1):
        print(start, end=" ")
        start += 1
print("")

出力結果

1
2 3
4 5 6
7 8 9 10
11 12 13 14 15

パターン3:逆順に数字を出力する

同じ考え方で、開始値を大きく設定し、1ずつ減らしていけば、逆順のピラミッドも簡単に作成できます。

start = 15
for i in range(5):
    for j in range(i + 1):
        print(start, end=" ")
        start -= 1
print("")

出力結果

15
14 13
12 11 10
9 8 7 6
5 4 3 2 1

コードのポイント

  • 二重ループ構造: 外側の for i in range(5) が行数(5行)を担当し、内側の for j in range(i + 1) がその行に表示する数字の個数を決定します。
  • end引数の活用: print()end=""end=" " を指定することで、デフォルトの改行を防ぎ、同じ行に数字を並べて出力できます。
  • 行末での改行: 内側のループ終了後に空の print("") を呼び出すことで、次の行へ移動します。

これらのパターンは range(5) の数値を変更するだけで任意の行数に対応でき、応用として星形(*)のピラミッドなど、さまざまな図形パターンの生成にも役立つ基本的なテクニックです。

  1. Pythonで「Hello World!」を表示する方法|printの基本をわかりやすく解説

    Pythonで画面に文字を出力する基本:print Pythonで画面(標準出力)に文字列を表示する最も基本的な方法は、printを使うことです。 >>> print Hello, world Hello, world このようにprintの後に表示したい文字列を書くだけで、ターミナルやコンソールにその内容が出力されます。 複数の値をスペース区切りで表示する 同じ行に複数の文字列などを表示したい場合は、各要素をカンマ(,)で区切ります。カンマの間には自動的に半角スペースが挿入されます。 >>> print Hello,, World Hello, Worl

  2. Pythonで画面に出力するには?print文の基本と使い方を解説

    Pythonで画面(標準出力)に文字や値を表示する最も基本的な方法は、print文を使うことです。>>> print Hello, world Hello, worldカンマ区切りで複数の項目を出力する同じ行に複数の項目をスペースで区切って表示したい場合は、項目の間をカンマで区切ります。>>> print Hello,, World Hello, Worldこの例では、どちらの文字列にもスペースは含まれていませんが、2つのオブジェクトの間にあるカンマによって、print文が自動的にスペースを挿入してくれます。さまざまなデータ型の出力print文は文字列だけで