0
我正在嘗試使用while循環創建一個簡單的*
金字塔,但它停止在前五個*
。我無法弄清楚爲什麼。如何在Ruby中嵌套while循環
這是我的代碼:
x = 5
y = 0
while x > 0
while y < x
print "*"
y +=1
end
x -= 1
end
我正在嘗試使用while循環創建一個簡單的*
金字塔,但它停止在前五個*
。我無法弄清楚爲什麼。如何在Ruby中嵌套while循環
這是我的代碼:
x = 5
y = 0
while x > 0
while y < x
print "*"
y +=1
end
x -= 1
end
你永遠不重置y
或打印一個新行
x = 5
y = 0
while x > 0
while y < x
print "*"
y +=1
end
print "\n"
y = 0
x -= 1
end
輸出
*****
****
***
**
*
這是不好的紅寶石壽
這是一個更加地道的解決方案
5.downto(1) do |x|
1.upto(x) do |y|
print "*"
end
print "\n"
end
輸出
*****
****
***
**
*
我不知道的「金字塔」的最終形狀,你在找什麼,但你可能可以調整上述技巧以獲得所需的輸出
你可能會解釋爲什麼''downto''和'upto'用塊比'while'塊更好。 –
您可以粘貼最終輸出嗎? – naomik