-2
私はのピラミッドをに再割り当てせずに作ろうとしています。Python:数値でピラミッドを作る
私は(下記参照)のシンボルでこれを行うことができました:
def print_pyramid_step_3(heightNum):
ctr = 1
while(ctr <= heightNum):
row_spaces = " " * (heightNum - ctr)
row = (2*ctr-1) * "$"
print(row_spaces + row)
ctr = ctr +1
# Get the input to get the height of the pyramid
heightNum = int(input("Enter the height of the pyramid: "))
print("----"*50)
print("Printing the pyramid by adding spaces to the row")
print("----"*50)
print_pyramid_step_3(heightNum)
出力:
$
$$$
$$$$$
$$$$$$$
$$$$$$$$$
所望の出力Imがピラミッドでたときに、ユーザーがタイプのようなルックスを取得しよう高さ5、開始数1です。
希望出力:
1
234
56789
10111213141516
171819202122232425
すべての数が文字の同じ番号を使用する必要があります - すなわち、 '「10」'と '」5" '使うべき2つの文字 - 短い数字にスペースを使用する必要があります。あなたがピラミッドで100を持つ場合、すべての数字は3つの文字を使用する必要があります - つまり。 「5」、「10」、「100」、 – furas
「再割り当てしない」とはどういう意味ですか? – viraptor
あなたは描画する必要がある行の数を知っていますので、whileループではなくforループを作成してから、各行に対して出力する必要がある最初のスペースの数(height-rownum-1)行インデックス0から開始します)。次に1桁の数字を印刷し、次の桁の印刷は3桁、次の桁の5桁を印刷するなど、各行に印刷された番号に2を追加するだけです。 –