-1

私はこの機能を持っています:

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

ユーザーが5forx5for を入力すると、を作成して印刷しyたいのですが、代わりにこれが印刷されます。z5 + 51055

4

3 に答える 3

1

そこに着く別の方法:

x = '5'
y = '5'

[x, y].map(&:to_i).inject(:+)
=> 10
于 2013-01-24T17:46:20.283 に答える
1

読み取った値は文字列として格納され、文字列を使用して+演算子が連結を実行します。整数演算を実行する場合は、両方の入力を整数に変換する必要があります。

z = x.to_i + y.to_i
于 2013-01-24T17:27:22.290 に答える
0
z = x.to_i + y.to_i

入力文字列を整数または浮動小数に変換するだけです(to_f

于 2013-01-24T17:27:19.213 に答える