我有这个功能:
def func()
puts "Give a value for x \n>"
x = gets.chomp
puts "Give a value for y \n>"
y = gets.chomp
z = x + y
puts z
end
如果用户输入5
的{{1}}和x
的{{1}},我希望5
制作y
并打印{{1}但是,这将打印z
。
答案 0 :(得分:1)
您读取的值存储为字符串,+
运算符使用字符串执行连接。如果要执行整数运算,则需要将两个输入都转换为整数:
z = x.to_i + y.to_i
答案 1 :(得分:1)
到达那里的另一种方式:
x = '5'
y = '5'
[x, y].map(&:to_i).inject(:+)
=> 10
答案 2 :(得分:0)
z = x.to_i + y.to_i
只需将输入字符串转换为整数或浮点数(to_f
)