Pythonで逆三角形の星形パターン(*)を出力するプログラム
Pythonで星(アスタリスク)のパターンを逆順、つまり逆三角形の形に出力したい場合、「for」ループを使用するのが最もシンプルな方法です。forループを使えば、指定した範囲の数値を順番に繰り返し処理しながら、必要な文字を必要な回数だけ出力できます。ポイントは、ループが1回回るごとにカウント値を減算していくことです。
以下に具体的な実装例を示します。
サンプルコード
N=6
print("変数Nを" + str(N) + "に初期化しました")
print("逆順の星形パターンを表示します")
for i in range(N, 0, -1):
print((N-i) * ' ' + i * '*')実行結果
変数Nを6に初期化しました
逆順の星形パターンを表示します
******
*****
****
***
**
*コードの解説
- まず、変数「N」に表示する行数となる値を設定し、コンソールに出力します。
- 次に、「range(N, 0, -1)」を使ってforループを作成します。これにより、Nから1まで1ずつ減少しながら繰り返し処理が行われます。
- 各行では、「(N-i) * ' '」で先頭の空白を生成し、「i * '*'」でアスタリスクを出力することで、右側にずれた逆三角形の形を実現しています。
- ループが進むごとにiの値が減っていくため、表示される星の数も1個ずつ減少します。
- この結果がコンソールに順番に表示されます。
補足:range関数の第3引数について
「range(N, 0, -1)」のように第3引数に「-1」を指定すると、カウントダウン形式の繰り返し処理が可能になります。開始値Nから始まり、終了値0の手前(つまり1)まで、ステップ-1ずつ減少していきます。この仕組みを理解すれば、ピラミッド型やひし形など、さまざまな星形パターンの出力にも応用できます。
-
Pythonでパターンを出力する方法|三角形・数字・アルファベット・ピラミッドのコード例
Pythonでパターンを出力するには、ネストされた(入れ子構造の)forループを使用します。外側のループで行数を制御し、内側のループで列数を処理します。そしてprint文を工夫することで、目的に応じたさまざまなパターンを作成できます。パターンには、星(アスタリスク)パターン、数字パターン、アルファベットパターンなどがあり、三角形やピラミッドなど、さまざまな形状にも対応できます。パターン出力の基本これらのパターンは、print文を少し変更しながらforループを組み合わせることで出力できます。基本的な考え方はどのパターンも共通しており、違いはごくわずかです。ここからは、代表的なパターンのコードを実
-
Pythonで行列をZ字形に出力するプログラムの解説
本記事では、n×n の正方行列の要素を「Z」の字形に沿って出力する方法について、その考え方と実装の手順をわかりやすく解説します。 問題の概要 次数 n×n の正方行列が与えられたとき、その要素を Z 字形に従って順番に表示することが求められます。 Z 字形の走査は、以下の3つのステップで構成されます。 まず、最初の行(1行目)を左から右へ走査する 次に、主対角線(左上から右下へ向かう対角成分)を走査する 最後に、最終行(最後の行)を左から右へ走査する ここでは説明のため、あらかじめ用意した入力行列を使用して、コードの流れを示します。 サンプルコード arr = [[1, 2, 6, 9],