为什么 ruby 循环不退出
why ruby loop does not exit
我正在尝试编写一个在整数变量的特定值处退出的循环。
i=2
while i != 5 do
puts "insert an integer. 5 to end"
i = gets.chomp
puts "you entered #{i}"
end
puts "program end"
即使我插入了 5
,程序仍然要求输入 "insert an integer. 5 to end"
与循环do相同的故事
i=2
loop do
puts "insert an integer. 5 to end"
i = gets.chomp
puts "you entered #{i}"
break if i == 5
end
puts "program end"
gets.chomp
returns一个String
,所以i
永远不等于5
,一个Fixnum
。您需要将其转换为整数:
i = gets.chomp.to_i
i=2
while i != "5" do
puts "insert an integer. 5 to end"
i = gets.chomp
puts "you entered #{i}"
end
puts "program end"
您从用户那里得到一个字符串,因此 i != 5
总是计算为 false。您可以将其转换为 i != "5"
或将您的字符串转换为整数。
我正在尝试编写一个在整数变量的特定值处退出的循环。
i=2
while i != 5 do
puts "insert an integer. 5 to end"
i = gets.chomp
puts "you entered #{i}"
end
puts "program end"
即使我插入了 5
,程序仍然要求输入 "insert an integer. 5 to end"与循环do相同的故事
i=2
loop do
puts "insert an integer. 5 to end"
i = gets.chomp
puts "you entered #{i}"
break if i == 5
end
puts "program end"
gets.chomp
returns一个String
,所以i
永远不等于5
,一个Fixnum
。您需要将其转换为整数:
i = gets.chomp.to_i
i=2
while i != "5" do
puts "insert an integer. 5 to end"
i = gets.chomp
puts "you entered #{i}"
end
puts "program end"
您从用户那里得到一个字符串,因此 i != 5
总是计算为 false。您可以将其转换为 i != "5"
或将您的字符串转换为整数。