本文へスキップ
BecomeCoder

C++コース · 第2章 演算子 · レッスン6

代入と複合代入 ― 変数を更新する

ブラウザで完結

導入

変数の値を「いまの値をもとに更新する」場面はとても多いです。+= などの複合代入演算子や、++ を使うと短く書けます。

説明

= は代入(右の値を左に入れる)です。「いまの値に足す」は x = x + 3; と書けますが、x += 3; と短くできます。

#include <iostream>
using namespace std;

int main() {
    int x = 10;
    x += 5;    // x = x + 5 と同じ → 15
    x -= 3;    // 12
    x *= 2;    // 24
    x /= 4;    // 6
    cout << x << endl;   // 6
    return 0;
}

1だけ増やす・減らすには ++--(インクリメント/デクリメント)が使えます。ループでよく登場します。

#include <iostream>
using namespace std;

int main() {
    int count = 0;
    count++;   // 1
    count++;   // 2
    count--;   // 1
    cout << count << endl;   // 1
    return 0;
}

やってみよう

x の初期値や複合代入の演算を変えて、途中経過を cout で表示しながら確かめましょう。

演習

int score = 100; から始め、+=20 を足し、-=35 を引いた結果を表示してください(結果は 85)。

ヒント1を見る

score += 20; のあと score -= 35;、最後に cout << score << endl;

実際に動かしてみよう

下のエディタにC++を書いて「実行」を押すと、ブラウザ内のインタプリタで出力が表示されます。本文の例をそのまま試したり、書き換えたりしてみましょう(cin を使う回は「標準入力」欄に値を入れてから実行します)。

C/C++ — ブラウザ内で実行

ブラウザ内でC/C++を動かす学習用インタプリタ(JSCPP)を読み込みます(入門向けのサブセットです)。
スクロールして表示された時点でも自動で読み込まれます。