[英]While loops in Ruby
我只想連續三次說'BYE'
,然后退出。 這是關於一個聾啞的奶奶,他只會在字母全都大寫的情況下聽到聲音。
我嘗試使用三個不同的變量,但這沒有用。 我的代碼在下面,當我只說一次'BYE'
時,它就會起作用。
whatSaid = 'Hi!'
while (whatSaid != 'BYE')
whatSaid = gets.chomp
if (whatSaid == 'BYE')
puts 'FINE! LEAVE YOUR POOR GRANDMA TO DIE.'
else
if (whatSaid == whatSaid.upcase)
puts 'NO, NOT SINCE ' + rand(1930...1951).to_s + '!'
else
puts 'HUH!? SPEAK UP, SONNY!'
end
end
end
為什么不使用一個名為bye_count
的變量-從0開始,每次聽到'BYE'時將其遞增-當該變量達到3時,退出
例如
what_said = 'Hi!'
bye_count = 0
while (bye_count < 3)
what_said = gets.chomp
if (what_said == 'BYE')
bye_count += 1
puts 'FINE! LEAVE YOUR POOR GRANDMA TO DIE.'
else
if (what_said == what_said.upcase)
puts 'NO, NOT SINCE ' + rand(1930...1951).to_s + '!'
else
puts 'HUH!? SPEAK UP, SONNY!'
end
end
end
無關注釋:ruby通常使用underscore_case作為變量名,而不是camelCase :)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.