【C#】演算子を使用して数値計算をする方法

パソコンの起源はミサイルの弾道計算をするための機械であり、本来のパソコンは大型の計算機でした。そのため数値を使った計算は、さながらパソコンの本職と言ってもよいほどです。

この記事ではC#の演算子を使用して数値計算を行う方法を、コンソールアプリケーションを使いながら解説していきます。C#の最も基礎的な部分になります。

C#で数値計算を行う方法

早速ですがC#で数値計算を行う方法のサンプルを作成していきます。新しくプロジェクトを作成してコンソールアプリケーションを準備して、以下のプログラムを書いてみて実行してみましょう。書いて動かしてみればすぐに理解できると思います。

int add = 10 + 5;
Console.WriteLine(add.ToString());
            
int subtract = 10 - 3;
Console.WriteLine(subtract.ToString());
            
int multiply = 3 * 5;
Console.WriteLine(multiply.ToString());

int devide = 20 / 5;
Console.WriteLine(devide.ToString());
            
int mod = 11 % 5;
Console.WriteLine(mod.ToString());

いくつかの計算式をズラッと書いてみました。初めに押さえておきたい数値計算の演算子はこのサンプルで理解できるかと思います。実際に動かしてみると、各サンプルがどんな処理をしているのかがわかると思います。実行結果は以下のようになりました。

15
7
15
4
1

それぞれの行と計算結果を確認すれば、大体のイメージはつかめるかと思います。難しいとしたら、一番最後の「%」になるかもしれません。上記で書いてもらった計算で使用されている演算子の一覧を以下に作成しました。

記号内容
足し算+
引き算
掛け算*
割り算/
余り%

一番最後の「%」は「余り」を計算するための演算子でした。「11 / 5 = 2 余り 1」となるので、画面上では1と表示されていたんですね。これで理解してもらえたかと思います。

また、上記のサンプルでは数値を直接計算していましたが、変数でも演算子を使った計算が可能です。新しいサンプルを用意したので、新しいコンソールアプリケーションを作成して以下のプログラムを書いて実行してみましょう。

int numberA = 20;
int numberB = 3;

int add = numberA + numberB;
Console.WriteLine(add.ToString());

int sub = numberA - numberB;
Console.WriteLine(sub.ToString());

int mul = numberA * numberB;
Console.WriteLine(mul.ToString());

int dev = numberA / numberB; 
Console.WriteLine(dev.ToString());

int mod = numberA % numberB;
Console.WriteLine(mod.ToString());

少し長めのサンプルになっていますが、手を動かしてみればわかる通り、何ら難しいことはしていません。プログラムの頭で2つの数値の変数を用意して、それぞれに20と3を代入しています。その2つの変数と演算子を組み合わせて計算しています。

23
17
60
6
2

上記のように出力されていれば問題ありません。ただ知っておいてもらえたいのが「int dev = numberA / numberB;」という箇所についてです。これ、実際に計算を行ってみると「20 / 3 = 6.666666・・・」と続くことになりますが、この結果では「6」となっています。

どうしてこういう結果になるかというと、intで宣言している数値は整数のみ(小数は不可)という特徴を持っているからです。数値といっても、本来はたくさんの種類があって、それによって計算結果が異なったりする場合があります。プログラミングでは「桁落ち」と言ったりもします。

こうした変数の種類の違いは、次回に取り組む内容になっているので、その時になったら理解してもらえれば十分かなと思います。また、「int mod = numberA % numberB;」の答えは「2」となっていますが、この演算子を使うことによって、偶数や奇数などの判定に使用できるので知っておくと良いでしょう。