每次運行此代碼時,即使我在第一次嘗試中輸入大於0的整數,我也會收到提示「INTEGER GREATER THAN 0」。我試圖用verify方法實現的是輸入只接受大於0的整數,如果他們放入其他東西,它會提示他們「INTEGER GREATER THAN 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'。 –