我正在尝试从文件中获取大量数字,将它们存储为数组,并加总。
nums = Array.new
x, total=0, 0
file = File.open("inputfile.txt", 'r')
while !file.eof?
nums[x] = file.readline
x+=1
end
while x>0
x-=1
total += nums[x]
end
puts total
当我的代码执行时,出现了一个错误,提示:
String can't be coerced into Fixnum (TypeError)
我检查了每个数组元素确保它们实际上具有正确的数据。我认为当存储时,这些数字被视为字符串。如果是这种情况,我该如何将数组更改为整数,以便可以对它们进行总计?
puts IO.readlines("inputfile.txt").map(&:to_i).reduce(:+)
。 - squiguy