Registriert seit: 10. Jan 2005
Ort: Bönen
1.175 Beiträge
Delphi 11 Alexandria
|
AW: Ganze Zahl immer auf nächste 50 runden?
26. Feb 2017, 20:41
Hallo,
in der Umsetzung aufwändig, aber das Ergebnis scheint zu stimmen :
Delphi-Quellcode:
function auf50kaufmaennisch_runden( Const Value: Integer): Integer;
Var
i, temp: Integer;
begin
temp := Value;
if temp > 49 then begin
if (StrToInt(copy(IntToStr(temp), Length(IntToStr(temp)) - 1, Length(IntToStr(temp)))) > 49) then begin
for i := 0 to 50 do begin
if temp mod 50 = 0 then begin
Result := temp;
Exit;
end
else Inc(temp);
end;
end else begin
for i := 50 downto 0 do begin
if temp mod 50 = 0 then begin
Result := temp;
Exit;
end
else Dec(temp);
end;
end;
end
else Result := 0;
end;
procedure TForm11.Button1Click(Sender: TObject);
begin
showmessage(IntToStr(auf50kaufmaennisch_runden(SpinEdit1.Value)));
end;
Jürgen Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
|