普段は何も考えてなかったけどやっぱり四捨五入はちゃんとしないとね
↓の「Roundoff 関数」は Delphi5 のヘルプ「Round 関数」のところに載ってる
『通常の四捨五入を使う場合には以下の関数を使用してください』というやつ
100/6=16.6666666...
で Trunc だと切り捨てられちゃう
function Roundoff(X: Extended):integer;
begin
if x >= 0 then Result := Trunc(x + 0.5) else Result := Trunc(x - 0.5);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
for i:=1 to 10 do
begin
Memo1.Lines.Add(IntToStr(Roundoff(100/i))+' '+IntToStr(Trunc(100/i)));
end;
end;
0 件のコメント:
コメントを投稿