[Delphi]小数の切り上げ、切り捨て


※全てのDelphiで動作する保証はありません。また、内容に関し管理人は全ての責任を負いかねます

サンプル ※説明に必要な部分しか記述していません

 

Delphi関連書籍 amazon

 

★重要★このサンプルでは「小数部分の切り捨て、切り上げ、切り下げ」のみ取り上げています。

下記を実行すると

procedure TForm1.Button1Click(Sender: TObject);

//フォーム上にTMemoを配置します

//uses句に Math を追加しておきます

const
    c_e = 123.4;
    c_me = -123.4;
var
    w_e: Extended;

begin
    Memo1.Clear;

    Memo1.Lines.Add('サンプル数値 '+ FloatToStr(c_e) +' と '+ FloatToStr(c_me));
    MEmo1.Lines.Add('');

    Memo1.Lines.Add('Trunc : 小数部分の切り捨て');
    w_e := Trunc(c_e);
    Memo1.Lines.Add('        正の数の場合 '+ FloatToStr(w_e));
    w_e := Trunc(c_me);
    Memo1.Lines.Add('        負の数の場合 '+ FloatToStr(w_e));
    MEmo1.Lines.Add('');


    Memo1.Lines.Add('Ceil : 小数部分の切り上げ');
    w_e := Math.Ceil(c_e);
    Memo1.Lines.Add('        正の数の場合 '+ FloatToStr(w_e));
    w_e := Math.Ceil(c_me);
    Memo1.Lines.Add('        負の数の場合 '+ FloatToStr(w_e));
    MEmo1.Lines.Add('');


    Memo1.Lines.Add('Floor : 小数部分の切り下げ');
    w_e := Math.Floor(c_e);
    Memo1.Lines.Add('        正の数の場合 '+ FloatToStr(w_e));
    w_e := Math.Floor(c_me);
    Memo1.Lines.Add('        負の数の場合 '+ FloatToStr(w_e));


end;

このようになります。

delphi-trunc-ceil-floor