C#の演算子一覧と使い方!算術・比較・論理演算子の基本を解説
生徒
「C#で数字の計算や条件のチェックってどうやるんですか?」
先生
「C#では“演算子”を使って、足し算・引き算・比較や条件チェックができますよ。」
生徒
「“演算子”って何ですか?難しそう…」
先生
「大丈夫です!日常でも使っている+(プラス)や−(マイナス)といった記号のことです。C#ではこれらを“演算子”と呼ぶんですよ。」
生徒
「なるほど!他にはどんなものがありますか?」
先生
「では、基本の“算術演算子”、“比較演算子”、“論理演算子”の3つを一緒に学びましょう!」
1. 演算子とは?
演算子(えんざんし)とは、値と値の間に置いて、計算や比較などを行う記号のことです。C#ではさまざまな演算子があり、算術演算子・比較演算子・論理演算子が基本となります。
たとえば、+(プラス)は足し算をする演算子で、==は「等しいかどうか」を調べる演算子です。
2. 算術演算子(足し算や引き算など)
まずは日常でも使う「足し算」「引き算」などの算術演算子から見ていきましょう。これは数値の計算に使います。
+:足し算-:引き算*:掛け算(アスタリスクと読みます)/:割り算%:余り(割り算の残り)
int a = 10;
int b = 3;
Console.WriteLine(a + b); // 足し算:13
Console.WriteLine(a - b); // 引き算:7
Console.WriteLine(a * b); // 掛け算:30
Console.WriteLine(a / b); // 割り算:3
Console.WriteLine(a % b); // 余り:1
13
7
30
3
1
3. 比較演算子(条件を比べる)
次に紹介するのは比較演算子です。これは2つの値が等しいか、大きいか、小さいかなどを調べるときに使います。
==:等しい!=:等しくない>:より大きい<:より小さい>=:以上(大きいまたは等しい)<=:以下(小さいまたは等しい)
int x = 5;
int y = 10;
Console.WriteLine(x == y); // false(等しくない)
Console.WriteLine(x != y); // true(等しくない)
Console.WriteLine(x < y); // true(xはyより小さい)
False
True
True
結果は「true」か「false」で返されます。「true」は「正しい(イエス)」、「false」は「間違っている(ノー)」という意味です。
4. 論理演算子(条件を組み合わせる)
最後に論理演算子を紹介します。これは複数の条件を組み合わせて判断したいときに使います。
&&:かつ(AND)→ 両方がtrueのときにtrue||:または(OR)→ どちらかがtrueならtrue!:否定(NOT)→ trueをfalseに、falseをtrueに
bool isAdult = true;
bool hasTicket = false;
// AND:両方必要
Console.WriteLine(isAdult && hasTicket); // false
// OR:どちらかあればOK
Console.WriteLine(isAdult || hasTicket); // true
// NOT:逆にする
Console.WriteLine(!isAdult); // false(もともとtrueだから)
False
True
False
5. よくある疑問:整数と割り算の注意点
整数(int型)同士の割り算では、小数点以下は切り捨てになります。
int a = 7;
int b = 2;
Console.WriteLine(a / b); // 結果は3(小数点以下は表示されない)
3
小数まで正確に計算したい場合は、double型を使います。
double a = 7;
double b = 2;
Console.WriteLine(a / b); // 3.5 と表示される
3.5
6. おまけ:変数を増減する演算子
変数の値を1ずつ増やしたり減らしたりするための便利な演算子もあります。
++:1増やす--:1減らす
int count = 0;
count++;
Console.WriteLine(count); // 1になる
count--;
Console.WriteLine(count); // 0に戻る
1
0
まとめ
C#における演算子の使い方は、プログラミングの基礎中の基礎でありながら、正しく理解しておくことがとても重要です。今回学んだように、演算子にはさまざまな種類があり、それぞれ役割がはっきりしています。たとえば、算術演算子では数値の計算、比較演算子では条件の評価、そして論理演算子では条件の組み合わせを行います。
どの演算子も日常的な「計算」や「判断」に直結しているため、初学者でもイメージしやすい部分ではありますが、型による違いや優先順位など細かいルールもあるため、繰り返し練習して身につけていくことが大切です。
算術演算子の基礎をおさらい
足し算(+)、引き算(-)、掛け算(*)、割り算(/)、余り(%)の5つの算術演算子は、整数型や小数型の計算において多用されます。特に注意したいのが、整数同士の割り算では小数点以下が切り捨てられるという点です。これに気づかず、思った通りの結果が出ないということは、初心者にありがちなミスです。
小数を扱いたいときは、doubleやfloatを使うように心がけましょう。
比較演算子で条件分岐を制御
条件式の中で使われる比較演算子(==、!=、>、<、>=、<=)は、if文やループ処理の中で頻出です。数値や文字列などを比べるときに使い、結果は必ずtrueかfalseで返されます。この仕組みが、条件による処理の分岐に使われるので、プログラミングの土台とも言える重要な概念です。
論理演算子の組み合わせで複雑な条件を作る
&&(AND)、||(OR)、!(NOT)といった論理演算子を使うと、複数の条件を組み合わせて評価できます。「○○かつ△△」という条件や、「○○ではない」といった否定の条件を書くときに使われます。特にANDとORは混同しやすいため、「両方必要か」「どちらかでOKか」という観点で使い分けることがポイントです。
演算子の優先順位と括弧の使い方
C#では演算子に優先順位があり、たとえば掛け算や割り算が足し算より先に計算されます。ただし、条件が複雑になるときは明示的に括弧()を使って優先順位を指定することで、意図通りの結果を得ることができます。たとえば:
int a = 5;
int b = 10;
int c = 15;
bool result = (a + b) > c || a < b;
Console.WriteLine(result); // false || true → true
括弧がなければ、演算の順番が読みづらくなってしまい、バグの原因にもなります。演算子を多用する際は、コードの可読性も意識しましょう。
変数の増減には++や--が便利
カウンター処理などで++や--といった増減演算子が登場します。これはcount = count + 1のような書き方を短くしたものです。ただし、前置と後置(++countとcount++)では微妙な違いがあるため、代入式の中で使う場合は注意が必要です。
条件と論理を組み合わせた例
複雑な条件分岐では、比較演算子と論理演算子を組み合わせて使うことが多くなります。次のようなサンプルはその典型例です。
int age = 20;
bool hasTicket = true;
if (age >= 18 && hasTicket)
{
Console.WriteLine("入場できます");
}
else
{
Console.WriteLine("入場できません");
}
このように、年齢とチケットの両方を満たすかという条件を&&でチェックし、結果に応じて処理を分けています。
まとめのまとめ
演算子の知識はC#だけでなく、あらゆるプログラミング言語に共通する重要な技術です。とくにC#では、演算子を使った条件判定や値の計算が多く登場するため、基本的な使い方に慣れておくとコードを書くのがぐっと楽になります。初学者のうちは、とにかく多くのサンプルコードを打ち込みながら、自分の手で演算子の動きを確かめることが上達への近道です。
生徒
「先生、演算子ってただの記号だと思っていたけど、すごくたくさん種類があるんですね!」
先生
「そうですね。しかも、記号ごとに意味が違うので、それぞれの役割をしっかり覚えることが大切です。」
生徒
「特に==と=の違いに注意しないと、よく間違えそうです…」
先生
「いいところに気がつきました!=は代入、==は比較なので、用途がまったく違うんですよ。」
生徒
「あと、++とか--は短く書けて便利ですね!」
先生
「はい、そのぶん読みづらくなることもあるので、使いすぎには注意ですよ。でも慣れてくると自然に使えるようになります。」
生徒
「これでif文も、もっと上手に書ける気がしてきました!」
先生
「演算子はプログラムの土台ですから、しっかり理解しておけばどんなコードにも応用できますよ。次は実際に自分で組み合わせてみましょう!」