运行此程序后,它只会返回" miss"
我做错了什么?
def method
print "Enter number from 0 to 4"
x = gets.chomp
num = rand(5)
if x == num
puts "hit"
else
puts "miss"
end
end
while 1==1
method
end
感谢
答案 0 :(得分:4)
gets.chomp
会生成 String 。将字符串与具有相等性的数字进行比较永远不会是true
,因为它们是完全不同的类型。
使用String#to_i
:
x
转换为整数
x = gets.chomp.to_i
另外,while 1==1
有点奇怪。这更具可读性:
while true
method
end
甚至更好:
loop { method }
答案 1 :(得分:3)