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

C#のMidpointRounding.ToEvenで数値を最も近い偶数に丸める方法

C#では、MidpointRounding列挙型ToEvenメンバーを使用することで、数値を最も近い偶数に丸める(銀行家の丸め)ことができます。この丸め方式は、中間値(ちょうど半分の値)を処理する際に、常に偶数側へ丸められるため、統計的な偏りを抑えたい場面で役立ちます。

基本的な使い方

まず、丸め対象となるdecimal型の数値を宣言して初期化します。

decimal val = 70.45M;

次に、decimal.Roundメソッドと組み合わせて、最も近い偶数へ丸めます。

decimal.Round(val, 0, MidpointRounding.ToEven)

第2引数の「0」は小数点以下の桁数を指定しており、ここでは整数に丸めています。

サンプルコード

以下に完全なコード例を示します。

using System;
using System.Linq;

class Demo {
    static void Main() {
        decimal val = 70.45M;
        Console.WriteLine(decimal.Round(val, 0, MidpointRounding.ToEven));
    }
}

実行結果

70

この例では、70.45が最も近い偶数である「70」に丸められています。なお、値がちょうど中間(例:70.5や71.5など)の場合でも、ToEvenは四捨五入ではなく必ず偶数側の値を選択する点が特徴です。例えば71.5は72ではなく72(偶数)に、70.5は70(偶数)に丸められます。

  1. HTML DOM入力number型のplaceholderプロパティとは?取得・変更方法をわかりやすく解説

    HTML DOM の input number placeholder プロパティは、数値入力フィールド(<input type=number>)に設定された placeholder(プレースホルダー)属性の値を取得したり、後から変更したりするために使用します。placeholder 属性とは、ユーザーがまだ何も入力していない状態で入力欄内に薄く表示されるヒントテキストのことです。 構文 placeholder プロパティの基本構文は以下の通りです。 placeholder の値を取得する場合 object.placeholder placeholder の値を変更する場合 obj

  2. HTML DOMのnodeTypeプロパティとは?使い方と戻り値の一覧を解説

    HTML DOMのnodeTypeプロパティは、ノードの種類に対応する数値を返すプロパティです。JavaScriptでDOMを操作する際、対象のノードが要素なのかテキストなのかコメントなのかを判別したい場面でよく使われます。 nodeTypeプロパティの構文 構文は以下のとおりです。読み取り専用のため、値を取得することしかできません。 Node.nodeType 戻り値の一覧 nodeTypeプロパティが返す主な数値は次のとおりです。 1 … 要素ノード(element node) 2 … 属性ノード(attribute node) 3 … テキストノード(text node) 8 … コメ