2016-08-18 88 views
-3

我想定義一個倒計數10到0並在最後返回新年快樂的方法!不過,我不希望我「做錯了嗎?Ruby循環倒數方法不倒計數

def countdown(number) 
    while number > 0 
    puts "#{number} SECONDS(S)!" 
    number -= 1 
    end 
"HAPPY NEW YEAR!" 
end 
+2

您打算減去'11'在每一步?可能就是這樣。如果你今後需要問,爲實現這個目標而添加實際輸出和預期輸出通常是很好的,這對於一個腳本每次倒數11個來說是完全正確的,如果這就是你想要的! –

+0

對不起,我應該檢查之前,我提交這是假設 - = 1 – Daquon

+1

@Daquon:在這種情況下,你需要更多地解釋什麼是錯的,因爲你的代碼顯然工作(或至少它符合你的書面描述)。添加1)你是怎麼稱呼它的。 2)會發生什麼。 3)你想要什麼/預計發生 –

回答

0
def countdown(number) 
    while number > 0 
    puts "#{number} SECONDS(S)!" 
    number -= 1 
    end 
puts "HAPPY NEW YEAR!" 
end 

我加了一個穿上你的代碼的最後一行。您的方法倒計時到0秒,但最後一行只返回字符串「HAPPY NEW YEAR!」,並且不會將其打印到屏幕上,或者如果您需要返回字符串並將其打印在屏幕上,則可以執行p "HAPPY NEW YEAR!"

+0

然而,這項任務要求我使用while循環,這就是爲什麼我有這麼多麻煩 – Daquon

+0

它假設是一個新的倒計時 – Daquon

+0

如果是這樣的話,你只需要放置一個'puts'或'p'新年快樂串。 – davidhu2000

1

快速Google搜索顯示您顯然嘗試解決https://learn.co/lessons/countdown-to-midnight(你真的應該包括那個鏈接)

您的代碼不流通spec,因爲它包含一個額外的S

puts "#{number} SECONDS(S)!" 
#     ^

它必須是:

+0

我解決了這個問題,已經非常感謝 – Daquon

+0

然而,如果你可以提供一個這樣的手牌,那麼我在倒數第二部分的countdown_to_sleep時遇到了麻煩?我在嘗試瞭解睡眠功能時遇到問題 – Daquon

+0

@Daquon請發佈新問題並提供相關詳細信息。 – Stefan