2016-03-31 10 views
1

私はcaseを標準のユーザー入力に対してチェックする構成を持っています。私は、与えられた答えがユーザーによって与えられていない場合、繰り返す(または何もしない)ことを望みます。 caseの建設には5つの選択肢があります:"s""t""c""a"、および"o"です。ユーザーがこれらの5つの回答をあきらめない場合、私は繰り返したい(または何も繰り返しません)。正解が与えられていない場合、大文字と小文字を繰り返します。

choice = gets.chomp.downcase 

case choice 
when 's' 
    @klass = "S Klass" 
    @extra = "S Extra"    
    puts "S Story" 
when 't' 
    @klass = "T Klass" 
    @extra = "T Extra" 
    puts "T Story" 
when 'c' 
    @klass = "C Klass" 
    @extra = "C Extra" 
    puts "C Story" 
when 'a' 
    @klass = "A Klass" 
    @extra = "A Extra" 
    puts "A Story" 
when 'o' 
    @klass = "O Klass" 
    @extra = "O Extra" 
    puts "O Story" 
end 

答えて

4
loop do 
    choice = gets.chomp.upcase 
    case choice 
    when "S", "T", "C", "A", "O" 
    @klass = "#{choice} Klass" 
    @extra = "#{choice} Extra"    
    puts "#{choice} Story" 
    break 
    end 
end 
関連する問題