カテゴリ: C# 更新日: 2025/06/25

C#の数値型をマスターしよう!int・double・decimalの違いと使い方

C#の数値型をマスターしよう!int・double・decimalの違いと使い方
C#の数値型をマスターしよう!int・double・decimalの違いと使い方

先生と生徒の会話形式で理解しよう

生徒

「C#で数字を扱いたいんですが、intとかdoubleとかdecimalって何が違うんですか?」

先生

「とても重要なポイントですね。C#では数値を扱うときに、用途によっていくつかの種類が用意されています。それぞれに特徴があるので、しっかり理解しておきましょう。」

生徒

「初心者にもわかるように、具体的な例を交えて教えてください!」

先生

「もちろんです!では、C#の数値型の基本から順番に学んでいきましょう。」

1. C#の数値型とは?

1. C#の数値型とは?
1. C#の数値型とは?

プログラミングでは、数字を扱う場面がとても多くあります。C#(シーシャープ)には、「数値型(すうちがた)」と呼ばれる、数字を保存・計算するためのデータ型が用意されています。

数値型にはいくつかの種類がありますが、初心者の方がまず覚えておきたいのは次の3つです。

  • int(整数型):小数点のない数字
  • double(倍精度浮動小数点型):小数点を含む数字
  • decimal(高精度小数型):お金などの正確な計算が必要なときに使う

2. int型(整数を扱う数値型)

2. int型(整数を扱う数値型)
2. int型(整数を扱う数値型)

intは「整数(しょうすう)」を扱うための数値型です。整数とは、小数点がない数字のことです。たとえば「10」や「-5」「0」などが該当します。

日常生活でいうと、「りんごが3個あります」のようなときに使います。

書き方の例を見てみましょう。


int number = 5;
Console.WriteLine(number);

5

注意:int型では、小数点を含む数字(たとえば「3.14」)は使えません。

3. double型(小数を扱える数値型)

3. double型(小数を扱える数値型)
3. double型(小数を扱える数値型)

doubleは、小数点を含む数字を扱いたいときに使います。たとえば「3.14」や「0.5」などの数値です。

ジュースの容量「1.5リットル」のように、小数が必要な場面で役立ちます。


double pi = 3.14;
Console.WriteLine(pi);

3.14

doubleは浮動小数点型(ふどうしょうすうてんがた)と呼ばれます。これは、計算のスピードは速いけれど、非常に小さい誤差が出ることがあります。

4. decimal型(お金の計算に向いている数値型)

4. decimal型(お金の計算に向いている数値型)
4. decimal型(お金の計算に向いている数値型)

decimalは、お金のように「ぴったりした計算」が必要なときに使います。

たとえば、スーパーで「りんごが1個120.50円」のような金額を計算する場面では、少しの誤差も許されません。そのようなときにdecimalを使います。


decimal price = 120.50m;
Console.WriteLine(price);

120.50

ポイント:decimal型の数字を書くときは、必ず最後に「m」をつけましょう。これは、「この数字はdecimal型ですよ」とC#に伝えるためです。

5. int・double・decimalの違いをまとめて比較

5. int・double・decimalの違いをまとめて比較
5. int・double・decimalの違いをまとめて比較

ここまで学んできた3つの数値型の違いを、簡単に比較してみましょう。

型の名前 小数点 使う場面 精度
int なし 人数、回数、年齢など 高い(整数)
double あり 長さ、重さ、割合など 中くらい(誤差あり)
decimal あり 金額、税率、精密計算 とても高い(誤差なし)

6. 実際に使い分けてみよう!

6. 実際に使い分けてみよう!
6. 実際に使い分けてみよう!

それでは、int・double・decimalを使って、実際にどんなふうに使い分けるのか見てみましょう。

次の例では、商品の価格を計算しています。


int quantity = 3;
decimal unitPrice = 150.75m;
decimal total = quantity * unitPrice;
Console.WriteLine("合計金額: " + total + "円");

合計金額: 452.25円

quantityは個数なのでint、unitPricetotalは金額なのでdecimalを使っています。

7. 型の変換(キャスト)も知っておこう

7. 型の変換(キャスト)も知っておこう
7. 型の変換(キャスト)も知っておこう

intやdoubleなど異なる型を一緒に計算するときは、型の変換(キャスト)が必要になることがあります。


int x = 10;
double y = 3.5;
double result = x + y;
Console.WriteLine(result);

13.5

このように、intとdoubleを足すときには、自動的にdouble型になります。

逆に、自分で明示的に変換することを明示的キャストと呼びます。


double d = 9.99;
int i = (int)d;
Console.WriteLine(i);

9

この例では、小数点以下が切り捨てられて「9」になります。

カテゴリの一覧へ
新着記事
COBOLの変数名の付け方を解説!初心者でもわかる命名規則とコツ
C#のbreakとcontinueの使い方!ループ制御の基本テクニック
COBOLのFILLERの使い方とは?未使用領域を上手に管理する基本テクニック
C#のforeach文の基本!配列やコレクションを簡単に繰り返し処理する方法
人気記事
No.1
Java&Spring記事人気No1
COBOLのDISPLAY文の使い方を完全ガイド!初心者でもわかる出力方法
No.2
Java&Spring記事人気No2
C#のwhile文の使い方!条件付きループを基礎から学ぼう
No.3
Java&Spring記事人気No3
C#で型を調べる方法!GetType()・typeof演算子の違いと使い方
No.4
Java&Spring記事人気No4
COBOLのINDEXED BY句を使ったインデックス管理の基本をやさしく解説!