【发布时间】:2018-01-26 05:03:28
【问题描述】:
每次运行此代码时,我都会收到提示“INTEGER GREATER THAN 0”,即使我第一次输入大于 0 的整数也是如此。我试图用验证方法完成的是输入将只接受大于 0 的整数,如果他们输入其他内容,它将提示他们“整数大于 0”。任何帮助将不胜感激。
def verify(input)
puts "please input an integer > 0"
input = gets.chomp
while input == 0 || input.class != Fixnum
puts "INTEGER GREATER THAN 0"
input = gets.chomp!.to_i
end
end
puts "for your first number:"
num_1 = verify(num_1)
puts "for your second number:"
num_2 = verify(num_2)
def div(num_1, num_2)
num_1 / num_2
end
def rem(num_1,num_2)
num_1 % num_2
end
puts "#{num_1.to_s} divided by #{num_2.to_s} is #{div(num_1, num_2)} remainder #{rem(num_1,num_2)}"
【问题讨论】:
-
gets返回一个字符串。将其转换为一个数字。input = gets.to_i -
除法、正数和余数方法已经存在。还要注意
a % b≠a.remainder b。