yuuki blog

プログラミング をアプトプットしています。

Ruby 1次方程式の計算

簡単な1次方程式を計算するプログラムです。

このような式のx を求める計算です
a + b = c (+には +,-,*,/ のいずれが入ります。)
条件は以下の通りです
  1. a,b,cはいずれも整数です。
  2. a,b,cのうちいずれかをxにします。
#入力例
2 * 3 = x
#出力例
6
int = gets.chomp.split.map(&:to_s)    #値を1次配列の文字列で入力します。
a = int[0].to_i           #a,b,cを数列に直します。
s = int[1]
b = int[2].to_i
c = int[4].to_i
if a == 0             #文字列から数列にしたため、xには0が入っています。            # sに代入されている符号と参照し、計算しています。
  if s == "+"
    x = c - b
  elsif s == "-"
    x = c + b
  elsif s == "*"
    x = c / b
  elsif s == "/"
    x = c * b
  else
  end
elsif b == 0
  if s == "+"
    x = c - a
  elsif s == "-"
    x = a - c
  elsif s == "*"
    x = c / a
  elsif s == "/"
    x = a / c
  else
  end
elsif c == 0
  if s == "+"
    x =  a + b
  elsif s == "-"
    x = a - b
  elsif s == "*"
    x = a * b
  elsif s == "/"
    x = a / b
  else
  end
else
end
puts x
配列に入っている符号を演算式に使えたら、コンパクトに記述できたのですが、やり方がわかりませんでした。