【C#】算術演算子の一覧と優先順位

C#における算術演算子の一覧と優先順位について解説します。

【算術演算子とは】種類一覧

算術演算子とは、足し算(加算)、引き算(減算)、掛け算(乗算)、割り算等(除算)を行うために使う演算子です。
つまり、これを使うことで色々な計算が出来ます。

C#で使える算術演算子は下記の通りです。

演算子 内容 使用例
+ 足し算 x + y なら xとyを足す
引き算 x – y なら xからyを引く
* 掛け算 x * y ならにyをかける
/ 割り算 x / y なら xをyで割る
% 余り x % y なら xをyで割った余りを求める

※整数を割り算(/)した場合、小数点以下は切り捨てられます。

動画解説

本ページの内容は以下動画でも解説しています。

サンプルコード

using System;

namespace Test {
    class Program {
        static void Main (string[] args) {

            // 変数の宣言・初期化
            int x = 10;
            int y = 3;
            int z = 0;

            // 足し算(x + y → z)
            z = x + y;
            Console.WriteLine (z); // 13

            // 引き算(x + y → z)
            z = x - y;
            Console.WriteLine (z); // 7

            // 掛け算(x * y → z)
            z = x * y;
            Console.WriteLine (z); // 30

            // 割り算(x / y → z)
            z = x / y;
            Console.WriteLine (z); // 3

            // 余り(x % y → z)
            z = x % y;
            Console.WriteLine (z); // 1

            // 組み合わせ
            z = x + y * 2;
            Console.WriteLine (z); // 16
        }
    }
}

【組み合わせ】演算子の優先順位

複数の演算子を組み合わせた場合、優先的にどの演算子から計算される優先順位があります。
演算子の優先順位は以下のとおりです(上位かつ左にあるほど優先されます)。

分類 演算子
乗法式 *, /, %
加法式 +, –
using System;

namespace Test {
    class Program {
        static void Main (string[] args) {

            // 変数の宣言・初期化
            int x = 10;
            int y = 3;
            int z = 0;

            // 足し算より掛け算の演算子のほうが優先度が高い
            // ① y * 2 = 3 * 2 = 6
            // ② x + 6 = 10 + 6 = 2
            // となる
            z = x + y * 2;
            Console.WriteLine (z); // 16

            //
        }
    }
}

優先順位を変更したい場合、先に計算した式を丸括弧 ( ) で囲みます。

using System;

namespace Test {
    class Program {
        static void Main (string[] args) {

            // 変数の宣言・初期化
            int x = 10;
            int y = 3;
            int z = 0;

            // x + yを丸括弧で囲むことで、x + yの優先度の方が掛け算より高くなった
            // ① x + y = 10 + 3 = 13
            // ② 13 * 2 = 26
            // となる
            z = (x + y) * 2;
            Console.WriteLine (z); // 26

            //
        }
    }
}
【C#入門】基礎文法とサンプル集
C#言語の基本文法・使い方をサンプルプログラムのソースコード付きで解説します。

コメント