using System; namespace Wankuma.Math { /// /// 最小の値を取り出すためのビルダーです。 /// public class MinBuilder { /// /// 内部変数 /// private decimal _val; /// /// 最大シーケンス番号 /// private int _MinSequence; /// /// 件数 /// private int _Count; /// /// コンストラクタ /// public MinBuilder() { this._val = Decimal.MaxValue; this._Count = 0; this._MinSequence = 0; } /// /// 値を追加します /// /// 追加する値 public void Add(decimal val) { this._Count++; //内部変数より小さければ値を更新する if (this._val > val) { this._val = val; this._MinSequence = this._Count; } } /// /// 最低値を取得する /// public decimal Min { get { return this._val; } } /// /// 最大シーケンス番号 /// public int MinSequence { get { return this._MinSequence; } } /// /// 件数を取得 /// public int Count { get { return this._Count; } } } }