我计算3个数字的平均值,用户将在Ruby中输入。我每次运行应用程序,用户将在3个电话号码,但我得到一个错误,指出:简单的红宝石平均程序
test.rb:7:in
<main>': undefined method
/' for "23\n23\n24\n":String (NoMethodError)
我的代码如下:
puts "Enter first"
num1 = gets
puts "Enter second"
num2 = gets
puts "Enter third"
num3 = gets
avg = (num1 + num2 + num3)/3
puts "Average is " + avg
您需要仔细检查错误消息。像这里一样,他们经常会指出问题所在。这个告诉你方法'/'没有为'String'类的实例''23 \ n23 \ n24 \ n“'定义。这意味着'(num1 + num2 + num3)'是一个字符串(不是整数)。因此您需要将其更改为'(num1.to_i + num2.to_i + num3.to_i)'。 –