0Pricing
C# Academy · レッスン

数値型

int、double、decimalなどを学びます。

「数値型」はCoddyKit上の無料C# Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはC# Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 C# Academyコースには全4レッスンが含まれています。

数値型が重要な理由

C# には複数の数値型があり、それぞれ格納できる値の範囲と使用するメモリ量が異なります。

適切な型を選ぶことで、プログラムを正確かつ効率的に保てます。ユーザー数のような整数は int に収まりますが、価格には小数が必要です。

このレッスンでは、整数型、浮動小数点型、decimal 型について学びます。

整数型

整数は、小数部分を持たない数値を格納します。

  • int — 32 ビットで、日常的に使う標準的な型
  • long — 64 ビットで、非常に大きな数を扱う型
  • short と byte — より小さい範囲を扱う型

値が約 20 億を超える可能性がない限り、int を使用します。

int age = 30;
long population = 8000000000;
Console.WriteLine(age);
Console.WriteLine(population);

整数型の範囲

各整数型には、固定された最小値と最大値があります。int.MaxValue などの定数で確認できます。

最大値を超えるとオーバーフローが発生し、値が気付かないうちに循環します。

Console.WriteLine(int.MinValue);
Console.WriteLine(int.MaxValue);
Console.WriteLine(long.MaxValue);

浮動小数点型: double

double は、小数を含む実数を扱う 64 ビットの浮動小数点型です。

小数リテラルのデフォルト型なので、3.14 は double です。高速で科学計算やグラフィックスに適していますが、値は近似的に格納されます。

double pi = 3.14159;
double half = 1.0 / 2.0;
Console.WriteLine(pi);
Console.WriteLine(half);

浮動小数点型: float

float は 32 ビットの浮動小数点型です。double の半分のメモリしか使用しませんが、保持できる桁数は少なくなります。

float リテラルには 2.5f のように f サフィックスが必要です。そうしないと、C# はその数値を double として扱います。

float temperature = 21.5f;
float ratio = 0.1f;
Console.WriteLine(temperature);
Console.WriteLine(ratio);

正確な金額: decimal

decimal は金額や正確な小数を扱うために設計された 128 ビット型です。double で発生する小さな丸め誤差を避けられます。

decimal リテラルには、9.99m のように m サフィックスを付けます。価格、銀行業務、会計処理にはこれを使用します。

decimal price = 9.99m;
decimal tax = 0.08m;
Console.WriteLine(price + price * tax);

double と decimal の比較

double では予想外の結果になることがある一方、decimal では正確な値が保たれることを確認してください。

そのため、double より低速であっても、金融関連のコードでは decimal が好まれます。

double d = 0.1 + 0.2;
decimal m = 0.1m + 0.2m;
Console.WriteLine(d);
Console.WriteLine(m);

var による型推論

var キーワードを使うと、コンパイラーが右辺の値から型を推論します。

変数の型が固定されることに変わりはありません。var count = 5; では int になります。小数リテラルでは、サフィックスによって型が決まります。

var count = 5;
var pi = 3.14;
var price = 9.99m;
Console.WriteLine(count.GetType());
Console.WriteLine(price.GetType());

桁区切り文字

読みやすくするため、数値リテラルの桁と桁の間にはアンダースコアを置けます。アンダースコアはコンパイラーによって無視されます。

これにより、大きな数値もひと目で簡単に読み取れるようになります。

int million = 1_000_000;
long distance = 9_460_730_472_580_800;
Console.WriteLine(million);
Console.WriteLine(distance);

double の特殊な値

double は、正および負の無限大と、NaN(非数)という特殊な値を表現できます。

double 同士のゼロ除算ではエラーではなく無限大になりますが、整数のゼロ除算では例外がスローされます。

double inf = 1.0 / 0.0;
double nan = 0.0 / 0.0;
Console.WriteLine(inf);
Console.WriteLine(nan);

適切な型を選ぶ

簡単な指針は次のとおりです。

  • 整数 → int(非常に大きい場合は long)
  • 科学計算や一般的な小数 → double
  • 金額や正確な値 → decimal

適切に選ぶことで、オーバーフローのバグや丸め誤差を防げます。

クイックチェック

数値型についての理解度を確認します。

まとめ

C# の基本的な数値型について学びました。整数には int と long、浮動小数点には double と float、正確な金額には decimal を使用します。

リテラルのサフィックスを覚えておきましょう。f は float、m は decimal を表し、アンダースコアは読みやすさのために使用します。範囲、精度、メモリ使用量のバランスを考えて型を選びます。

よくある質問

「数値型」レッスンは無料ですか?

はい。「数値型」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、C# Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 C# Academyコースには全4レッスンが含まれています。

「数値型」で何を学びますか?

int、double、decimalなどを学びます。 ブラウザで直接実行するハンズオンコードでC# Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

C# Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのC# Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。

「数値型」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このC# Academyレッスンでコードを書いて実行できますか?

はい。すべてのC# Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 数値型
  2. 算術演算と優先順位
  3. Mathクラス
  4. 数値を相互変換する
← C# Academyに戻る