C++は、強力なプログラミング言語であり、さまざまな計算を効率的に実行するために、多くの演算子を提供しています。演算子は、数値、変数、オブジェクトなどに対して操作を行うための記号です。このガイドでは、C++の演算子について詳しく説明し、基本的な演算から応用的な使い方まで解説します。実行結果を含むサンプルコードを使いながら、各演算子の動作を確認しましょう。
1. 算術演算子
算術演算子は、数値データに対して基本的な数学計算を行います。主な算術演算子には次のものがあります:
- 加算(
+
) - 減算(
-
) - 乗算(
*
) - 除算(
/
) - 剰余(
%
)
コード例
#include <iostream> using namespace std; int main() { int a = 10; int b = 3; cout << "加算: " << (a + b) << endl; cout << "減算: " << (a - b) << endl; cout << "乗算: " << (a * b) << endl; cout << "除算: " << (a / b) << endl; cout << "剰余: " << (a % b) << endl; return 0; }
上記のプログラムでは、変数 a
と b
に対して算術演算子を使用しています。実行結果は次のようになります。
実行結果
加算: 13 減算: 7 乗算: 30 除算: 3 剰余: 1
剰余演算子 %
は、割り算の余りを計算します。たとえば、10 ÷ 3 の余りは 1 です。
2. 代入演算子
代入演算子は、右辺の値を左辺の変数に代入するために使用されます。最も基本的な代入演算子は =
です。その他にも、算術演算と代入を同時に行う複合代入演算子があります。
- 加算代入(
+=
) - 減算代入(
-=
) - 乗算代入(
*=
) - 除算代入(
/=
) - 剰余代入(
%=
)
コード例
#include <iostream> using namespace std; int main() { int a = 10; a += 5; // a = a + 5 と同じ cout << "加算代入: " << a << endl; a -= 3; // a = a - 3 と同じ cout << "減算代入: " << a << endl; a *= 2; // a = a * 2 と同じ cout << "乗算代入: " << a << endl; a /= 4; // a = a / 4 と同じ cout << "除算代入: " << a << endl; a %= 2; // a = a % 2 と同じ cout << "剰余代入: " << a << endl; return 0; }
このプログラムでは、複合代入演算子を使って変数 a
の値を更新しています。実行結果は次のようになります。
実行結果
加算代入: 15 減算代入: 12 乗算代入: 24 除算代入: 6 剰余代入: 0
3. 比較演算子
比較演算子は、2つの値を比較して、真(true
)または偽(false
)を返します。比較演算子には次のものがあります。
- 等しい(
==
) - 等しくない(
!=
) - より大きい(
>
) - より小さい(
<
) - 以上(
>=
) - 以下(
<=
)
コード例
#include <iostream> using namespace std; int main() { int a = 10; int b = 20; cout << "a と b が等しい: " << (a == b) << endl; cout << "a と b が等しくない: " << (a != b) << endl; cout << "a が b より大きい: " << (a > b) << endl; cout << "a が b より小さい: " << (a < b) << endl; cout << "a が b 以上: " << (a >= b) << endl; cout << "a が b 以下: " << (a <= b) << endl; return 0; }
このプログラムでは、変数 a
と b
の値を比較して、結果を表示します。実行結果は次のようになります。
実行結果
a と b が等しい: 0 a と b が等しくない: 1 a が b より大きい: 0 a が b より小さい: 1 a が b 以上: 0 a が b 以下: 1
結果は 0
(偽)または 1
(真)として表示されます。たとえば、a
は b
より小さいため、a < b
の結果は 1
になります。
4. 論理演算子
論理演算子は、条件式を組み合わせて論理演算を行います。C++では、以下の3つの論理演算子がよく使われます:
- AND(
&&
) - OR(
||
) - NOT(
!
)
コード例
#include <iostream> using namespace std; int main() { bool x = true; bool y = false; cout << "x AND y: " << (x && y) << endl; cout << "x OR y: " << (x || y) << endl; cout << "NOT x: " << (!x) << endl; return 0; }
このプログラムでは、論理演算子を使ってブール値 x
と y
を組み合わせています。実行結果は次のようになります。
実行結果
x AND y: 0 x OR y: 1 NOT x: 0
論理演算子を使うことで、複雑な条件式を簡潔に表現できます。たとえば、x && y
は両方が true
のときに true
を返し、x || y
はどちらか一方が true
であれば true
を返します。
まとめ
C++の演算子を理解することで、より効率的なコードを書けるようになります。算術演算子、代入演算子、比較演算子、論理演算子は、C++プログラムの基礎となる重要な要素です。この記事で紹介したサンプルコードを参考にして、実際に手を動かしてみましょう。次のステップでは、これらの演算子を使って、より複雑なプログラムを作成できるようになるでしょう。