Menu
Coddy logo textTech

算術演算の短縮

CoddyのRubyジャーニー「基礎」セクションの一部。レッスン 13/88。

変数の現在の値に基づいて値を更新する必要がある場合、Ruby には複合代入演算子と呼ばれる省略形の演算子が用意されています。これらは算術演算と代入を1つの手順に組み合わせます。

score = score + 10と書く代わりに、score += 10を使えます。どちらも同じことをしますが、短縮形のほうがすっきりしており、実際のコードではより一般的です。

Rubyで利用できる算術演算のショートカットは次のとおりです。

points = 100
points += 25   # 次と同じ: points = points + 25 (現在 125)
points -= 10   # 次と同じ: points = points - 10 (現在 115)
points *= 2    # 次と同じ: points = points * 2 (現在 230)
points /= 5    # 次と同じ: points = points / 5 (現在 46)
points %= 10   # 次と同じ: points = points % 10 (現在 6)

これらのショートカットは、剰余を含め、これまでに学んだすべての算術演算子で使用できます。カウンターを増加させたり、合計を蓄積したりする場合に特に便利で、コードをより簡潔で読みやすくできます。

challenge icon

チャレンジ

簡単

次の変数が与えられています:

balance = 200

複合代入演算子(+=-=*=/=%=)のみを使用して、balance に対して次の操作を順番に実行してください:

  1. 50balance に加算する
  2. balance から 30 を減算する
  3. balance2 を乗算する
  4. balance4 で除算する
  5. balance7 で割ったときの余りを求める

各操作の後に、puts を使用して balance の現在の値を表示してください。出力行は合計5行になるはずです。

自分で試してみよう

# 初期残高
balance = 200

# TODO: 以下にコードを書いてください
# 複合代入演算子 (+=, -=, *=, /=, %=) を使って:
# 1. balance に 50 を加算し、それを出力する
# 2. balance から 30 を減算し、それを出力する
# 3. balance に 2 を掛け、それを出力する
# 4. balance を 4 で割り、それを出力する
# 5. balance を 7 で割った余りを求め、それを出力する
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Rubyオンラインコンパイラ