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)

これらのショートカットは、剰余(modulo)を含む、これまでに学んだすべての算術演算子で使用できます。これらは特に、カウンターのインクリメントや合計の累積を行う際に便利で、コードをより簡潔で読みやすくしてくれます。

challenge icon

チャレンジ

簡単

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

balance = 200

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

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

各操作の後、putsを使用してbalanceの現在の値を表示してください。合計で5行の出力が必要です。

チートシート

Rubyは、算術演算と代入を組み合わせた複合代入演算子を提供しています:

points = 100
points += 25   # points = points + 25 と同じ
points -= 10   # points = points - 10 と同じ
points *= 2    # points = points * 2 と同じ
points /= 5    # points = points / 5 と同じ
points %= 10   # points = points % 10 と同じ

利用可能な複合代入演算子:

  • 加算のための +=
  • 減算のための -=
  • 乗算のための *=
  • 除算のための /=
  • 剰余のための %=

自分で試してみよう

# 初期残高
balance = 200

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

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

基礎のすべてのレッスン