こんな悩みを解決します。
Pythonを使って模様とか図形を表示できると楽しいですよね。そこで、たったの3行でピラミッドを表示してみます。
いのうえ
こんにちは、学生フリーランスエンジニアのいのうえ(@inouelog)です!
この記事では
Pythonでピラミッドを表示する方法
について解説します。
Pythonでピラミッドを表示するための考え方
Pythonでピラミッドを表示する方法を解説する前に、考え方を解説します。
例えば、5段のピラミッドがあるとします。次のようにaとbの部分を考えます。
aの部分は、次のように空白の数が1個ずつ減っています。
段目 | 空白の数 |
1 | 4 |
2 | 3 |
3 | 2 |
4 | 1 |
5 | 0 |
一般化すると、n段のピラミッドのi段目の空白の数は
n – i
と表すことができます。
一方、bの部分は、次のように*の数が2個ずつ増えています。
段目 | *の数 |
1 | 1 |
2 | 3 |
3 | 5 |
4 | 7 |
5 | 9 |
一般化すると、n段のピラミッドのi段目の*の数は
2i – 1
と表すことができます。
いのうえ
以上を踏まえて、Pythonでピラミッドを表示する方法を解説します。
Pythonでピラミッドを表示する方法
ピラミッドは1段目からn段目まで*を表示するので、for文を使います。
i段目では
半角スペース:n – i個 + *:2i – 1個
を表示します。
よって、Pythonでn段のピラミッドを表示するコードは次のとおりです。
n = int(input('ピラミッドの段数を入力してください。'))
for i in range(1, n+1):
print(' ' * (n-i) + '*' * (2*i-1))
コマンドラインでPythonファイルを実行します。
% python pyramid.py
ピラミッドの段数を入力してください。
例えば、10と入力して[Enter]を押すと、10段のピラミッドが表示されます。
% python pyramid.py
ピラミッドの段数を入力してください。10
*
***
*****
*******
*********
***********
*************
***************
*****************
*******************
以上、『Pythonでピラミッドを表示する方法を解説【たったの3行】』でした。