2015-10-07 48 views
-1

創建一個計算學生費用的Ruby程序 我需要讓學生回答像「你是州居民」還是「想要停車貼花?」這樣的問題。並且代碼將根據用戶輸入執行。如何在ruby中創建選擇是和否選項

但是我遇到了是/否選擇部分的問題。無論用戶輸入只會選擇號碼,我不知道爲什麼會發生這種情況。謝謝。

puts "Are you a state resident[0] or not[1]:" 
resident = gets 
resident = resident.to_i 

case resident 
    when 0 
     enrollment_fee = 46.00 
    when 1 
     enrollment_fee = 335.00 

end 

puts "'enrollment_fee' + #{enrollment_fee}" 

puts "Want a parking decal? [y/n]:" 
parking = gets 
parking = parking.to_s 

puts parking 
if parking == 'y' 
    case semester 
     when 0,2 
      parking_decal = 85 
     when 1,3 
      parking_decal = 45 
     end 

else parking == 'n' 
    parking_decal = 0.00 

回答

1

gets回報用戶的輸入,包括換行符。因此輸入將不匹配'y''n'。順便說一句

puts "Want a parking decal? [y/n]:" 
parking = gets.chomp 

:要gets後立即刪除拖尾換行符呼叫chompelse parking == 'n'不符合你的期望。它是elsif parking == 'n'或只是else

相關問題