C#のdecimal型(10進数型)とは?四則演算の基本をサンプルコードで解説
C#におけるdecimal型(10進数型)は、値型(value type)に分類されるデータ型で、金額計算など高い精度が求められる場面でよく使われます。decimal型には、加算(+)、減算(-)、乗算(*)、除算(/)といった算術演算子が用意されており、通常の数値型と同じように演算を行うことができます。
decimal型の変数を宣言する
まず、2つのdecimal型の値を宣言してみましょう。decimal型のリテラルを代入する際は、数値の末尾に M または m サフィックスを付ける必要があります。
decimal d1 = 5.8M; decimal d2 = 3.2M;
decimal型同士の加算
decimal型の値を足し合わせるには、+ 演算子を使用します。
d1 = d1 + d2;
サンプルプログラム
それでは、2つのdecimal型の値を加算して結果を表示する完全なサンプルコードを見てみましょう。
using System;
using System.Linq;
class Demo {
static void Main() {
decimal d1 = 5.8M;
decimal d2 = 3.2M;
d1 = d1 + d2;
Console.WriteLine(d1);
}
}実行結果
9.0
まとめ
このように、decimal型は他の数値型と同じ感覚で四則演算が行えます。float型やdouble型と比べて誤差が発生しにくいため、金融計算や会計処理など、正確な小数点計算が必要なアプリケーションではdecimal型を使用するのが推奨されます。なお、リテラルにMサフィックスを付け忘れるとコンパイルエラーになるため注意しましょう。
-
C#のDecimal.Truncate()メソッドとは?小数点以下を切り捨てる使い方を解説
Decimal.Truncate()メソッドとはC#のDecimal.Truncate()メソッドは、指定されたDecimal値から整数部分だけを取り出して返す静的メソッドです。小数点以下のすべての桁は破棄されるため、四捨五入などの丸め処理ではなく、単純に小数部分を切り捨てたい場合に便利です。構文Decimal.Truncate()メソッドの構文は次のとおりです。public static decimal Truncate (decimal val);引数valには、切り捨ての対象となるdecimal型の数値を指定します。なお、戻り値もdecimal型である点に注意してください。使用例1それで
-
C#のDecimal.ToUInt64()メソッドとは?使い方をサンプルコード付きで解説
C#のDecimal.ToUInt64()メソッドは、指定されたDecimal(10進数)の値を、それに相当する64ビット符号なし整数(ulong)に変換するための静的メソッドです。小数点以下は切り捨てられ、整数部分のみが変換結果として返されます。また、負の値を指定した場合はOverflowExceptionがスローされる点に注意が必要です。構文メソッドの構文は以下のとおりです。public static ulong ToUInt64 (decimal val);パラメータ val には、変換対象となる10進数(decimal型)の値を指定します。戻り値変換後の値に相当する64ビット符号なし整