私は現在ルビーを学んでいますが、この問題に行き詰まっています:
聴覚障害者のおばあちゃんプログラムを書きます。おばあちゃんに何を言っても(何を入力しても)、彼女はHUH ?!と答えるはずです。SPEAK UP, SONNY! と叫ぶ場合を除きます (すべて大文字で入力してください)。あなたが叫ぶと、彼女はあなたの声を聞くことができ、叫び返します.NO、NOT SINCE 1938! あなたのプログラムを本当に信じられるものにするために、おばあちゃんに毎回違う年を叫ばせてください。たぶん、1930 年から 1950 年の間の任意の年です。「さようなら」と叫ぶまで、おばあちゃんとの会話を止めることはできません。
これは私が試したコードです:
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 の文字列が無限ループに陥ります。ここで何が間違っていますか?