C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のDecimal.Ceiling()メソッドとは?使い方とサンプルコード解説

C#のDecimal.Ceiling()メソッドは、指定されたdecimal型の数値「以上」である最小の整数値を返す静的メソッドです。一般的に「切り上げ」と呼ばれる処理に相当し、小数点以下を切り捨てるFloor()メソッドや四捨五入を行うRound()メソッドと対照的な動作をします。

構文

Decimal.Ceiling()メソッドの構文は以下の通りです。

public static decimal Ceiling (decimal val);

引数valには、切り上げの対象となるdecimal型の数値を指定します。戻り値もdecimal型として返されます。

使用例1:正の数値の場合

まずは、正の数値に対してDecimal.Ceiling()メソッドを使用する例を見てみましょう。

using System;
public class Demo {
    public static void Main(){
        Decimal val1 = 12.85m;
        Decimal val2 = 3.45m;
        Console.WriteLine("Decimal 1 = "+val1);
        Console.WriteLine("Decimal 2 = "+val2);
        Console.WriteLine("Ceiling (val1) = "+Decimal.Ceiling(val1));
        Console.WriteLine("Ceiling (val2) = "+Decimal.Ceiling(val2));
    }
}

実行結果

このプログラムを実行すると、次のような出力が得られます。

Decimal 1 = 12.85
Decimal 2 = 3.45
Ceiling (val1) = 13
Ceiling (val2) = 4

12.85は13に、3.45は4に切り上げられていることが分かります。小数部分がどれだけ小さくても、整数部より大きい値であれば必ず繰り上がります。

使用例2:負の数値の場合

続いて、負の数値に対する動作を確認してみましょう。

using System;
public class Demo {
    public static void Main(){
        Decimal val1 = -10.85m;
        Decimal val2 = -33.45m;
        Console.WriteLine("Decimal 1 = "+val1);
        Console.WriteLine("Decimal 2 = "+val2);
        Console.WriteLine("Ceiling (val1) = "+Decimal.Ceiling(val1));
        Console.WriteLine("Ceiling (val2) = "+Decimal.Ceiling(val2));
    }
}

実行結果

このプログラムを実行すると、次のような出力が得られます。

Decimal 1 = -10.85
Decimal 2 = -33.45
Ceiling (val1) = -10
Ceiling (val2) = -33

負の数値の場合でも、「元の値以上の最小の整数」という定義に従うため、-10.85は-11ではなく-10に、-33.45は-34ではなく-33になります。これは数直線上で正の無限大方向へ丸められる動作であり、日常的な「切り上げ」のイメージと異なる場合があるため注意が必要です。

  1. C#のDecimal.ToOACurrency()メソッドとは?構文と使い方をサンプルコードで解説

    C#のDecimal.ToOACurrency()メソッドは、指定されたDecimal(10進数)の値を、64ビット符号付き整数に格納されるOLEオートメーション通貨(OLE Automation Currency)値へと変換するためのメソッドです。OLEオートメーション通貨は、小数点以下4桁を固定で持つ形式で表現され、元の値が10,000倍された整数として扱われます。そのため、変換結果はlong型(64ビット符号付き整数)として返されます。構文このメソッドの構文は以下の通りです。public static long ToOACurrency (decimal val);パラメータ「val」に

  2. C#のDecimal.Floor()メソッドの使い方を徹底解説

    概要C#のDecimal.Floor()メソッドは、指定されたDecimal型の数値を「負の無限大方向」に向かって最も近い整数へ丸める静的メソッドです。正の数であれば小数点以下がそのまま切り捨てられますが、負の数の場合はより小さい整数側へ丸められる点に注意が必要です。構文構文は以下のとおりです。public static decimal Floor (decimal val);引数valには、丸めの対象となるDecimal型の値を指定します。使用例1:正の数の場合まず、正のDecimal値に対してDecimal.Floor()メソッドを使用する例を見てみましょう。using System; p