Discussion:
Konvertierung Extended nach Integer
(zu alt für eine Antwort)
Franz Moll
2015-02-12 08:19:41 UTC
Permalink
Hallo NG,

ich habe hier folgendes Konstrukt:

var
d: Double;
i: Integer;
begin
...
i := 100 * RoundTo(d, -2);
...
end;

Der Compiler meckert bei der Zuweisung für i wie folgt:

"E2010 Inkompatible Typen: 'Integer' und 'Extended'"

Recht hat er.
Ich möchte i als ganzahliges 100-Faches von d haben.
Wie macht man es richtig?

Vielen Dank schon mal.

Bye

Franz
Alfred Gemsa
2015-02-12 09:38:23 UTC
Permalink
Post by Franz Moll
i := 100 * RoundTo(d, -2);
Ich möchte i als ganzahliges 100-Faches von d haben.
i := round(100*d);

Alfred.
Holger Schieferdecker
2015-02-12 09:42:50 UTC
Permalink
Post by Franz Moll
Hallo NG,
var
d: Double;
i: Integer;
begin
...
i := 100 * RoundTo(d, -2);
i := Trunc( 100 * RoundTo(d, -2));
Post by Franz Moll
...
end;
"E2010 Inkompatible Typen: 'Integer' und 'Extended'"
Recht hat er.
Ich möchte i als ganzahliges 100-Faches von d haben.
Wie macht man es richtig?
Nachdem die Rundung und die Multiplikation ja schon die richtige Zahl
erzeugt haben, sollte es doch reichen, einfach die Nachkommastellen (in
dem Fall halt 0) zu "entfernen".

Gruß
Holger

Loading...