Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Nackommastelle als integer wert??


mcdust - Mi 21.07.04 15:48
Titel: Nackommastelle als integer wert??
hallo ich bin neu hier und hoffe das ist das richtige forum für meine frage:
wie bekomme ich aus z.B. 13,5 die 5 als normalen integer wert zum ausgeben??
es geht nur um die erste nachkommastelle..
für hilfe wär ich echt dankbar!!!


Udontknow - Mi 21.07.04 15:52


Delphi-Quelltext
1:
2:
3:
4:
function ErsteNachkommastelle(r:real):integer;
begin
  Result:=Trunc(r*10MOD 10;
end;


Cu,
Udontknow


TheNeon - Mi 21.07.04 16:07

oder falls es beliebige Nachkommastellen sind:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
function TForm1.Nachkommawert(wert: real): Integer;
begin
  result := strtoint(  RightStr(  floattostr(wert), Length(floattostr(wert)) - Pos(',', floattostr(wert))  )  );
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Edit1.Text := inttostr(Nachkommawert(123.456));
end;



Bye,
TheNeon :twisted:


mcdust - Mi 21.07.04 19:47

WOW so schnelle hilfe vielen dank auch wenn ich das mit den prozeduren noch nicht ganz verstehe habs hinbekommen mit
"rest:=Trunc(rest*10) MOD 10;"
vielen dank nochmal!!!