我是学习红宝石的新手,我想知道为什么当我输入150时它不会说你的完美。这是我正在编写的代码。
def prompt
print ">> "
end
puts "welcome to the weight-calc 3000! Enter you weight below!"
prompt; weight = Integer(gets.chomp())
if weight > 100 && weight < 300
puts "your healthy!"
elsif weight > 300
puts "your fat"
elsif weight < 100
puts "your skinny"
elsif weight == 150
puts "your perfect"
end
答案 0 :(得分:7)
值if weight > 100 && weight < 300
的条件true
为150
,因此甚至未输入最后一个elsif
。
您应该在通用条件(weight == 150
)之前添加更具体的条件(weight > 100 && weight < 300
)。
答案 1 :(得分:2)
看看你的第一个条件:
if weight > 100 && weight < 300
当weight
为150
时,它为> 100
和< 300
,因此第一个条件为真。
将if weight == 150
移至链的顶部。