我目前正在学习 ruby,但我遇到了这个问题:
编写聋奶奶程序。无论您对奶奶说什么(无论您输入什么),她都应该回应 HUH?!SPEAK UP, SONNY!,除非你大声喊出来(输入所有大写字母)。如果你大喊大叫,她会听到你的声音并回喊,不,不是自 1938 年以来!为了让你的节目真正可信,让奶奶每次都喊出不同的年份;可能是 1930 年到 1950 年之间的任意一年。在你喊 BYE 之前,你不能停止和奶奶说话。
这是我试过的代码:
puts "Say something to Grandma!"
something = gets.chomp
while something != "BYE"
if something == something.upcase
puts "NO, NOT SINCE 19" + (rand(30..50)).to_s + "!"
else
puts "HUH? SPEAK UP SONNY!"
end
end
每当我执行此操作时,if 和 else 字符串都会进入无限循环。我在这里做错了什么?