У меня есть вопрос относительно циклов if else в Ruby. Вот кодRuby if else сравнение условий
print "Enter your age: "
age = gets.chomp.to_i
print "Enter your sex(M/m/F/f) : "
sex = gets.upcase
if (sex == "M" and age > 21)
puts "Hi dude. You may enter."
elsif(sex == "F" and age > 18)
puts "Hi dudette. You may enter."
elsif (sex == "M" and age < 21)
puts "Hi dude. You may not enter."
elsif(sex == "F" and age < 18)
puts "Hi dudette. You may not enter."
else
puts age
puts sex
puts "I do not recognize that sex. Enter only M, m, F, or f."
end
Когда я печатаю на входах, независимо от того, что я войти в него входит только в секцию петли еще. Я распечатал 2 возраста и пола для двойной проверки, и они соответствуют условиям, которые я перечислил. Так что проблема здесь с моими переменными или это мои, если еще условия?
Комбинации '(М, 21) и' (F, 18) 'перейти к другому ветви слишком , Вы должны использовать '<=' or '> =' на одном из возрастных тестов для каждого пола. – axiac
@axiac Yup, я понял это также. Благодаря! – Gabberz