Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Extended in Integer Schreiben! (https://www.delphipraxis.net/111781-extended-integer-schreiben.html)

Rifman 9. Apr 2008 08:05


Extended in Integer Schreiben!
 
Hallo,
gibt es eine Funktion die mir einen extended zu Integer umwandelt?
Wenn ich das so mache:
Delphi-Quellcode:
Var
FloatValue : Extended;
IntegerValue ,Vorkommaanteil ,Nachkommaanteil: Integer;
...

FloatValue := 123,456;

Vorkommaanteil := Trunc(123,456);

Nachkommaanteil:= Int((FloatValue - Vorkommaanteil)*1000);
Bekomme ich eine Fehlermeldung, und zwar dass ich versuche eine Extended in Integer zu speichern,
Wie kann ich das am besten machen?

Danke

alzaimar 9. Apr 2008 08:08

Re: Extended in Integer Schreiben!
 
Schau Dir mal genau die Rückgabetypen der von dir benutzten Funktionen 'Trunc' und 'Int' an. Cursor rauf und F1. :zwinker:

Rifman 9. Apr 2008 08:16

Re: Extended in Integer Schreiben!
 
Achso,Trunc() gibt einen Integer zurück und Int() einen Real.Ok, und mit welcher Funktion kann man das am besten machen?

mkinzler 9. Apr 2008 08:19

Re: Extended in Integer Schreiben!
 
Je nach Format der Zielvariable

Rifman 9. Apr 2008 08:22

Re: Extended in Integer Schreiben!
 
In meinem Fall ist die Zielvariable ein 3 stelliger Integer.

Rifman 9. Apr 2008 09:25

Re: Extended in Integer Schreiben!
 
Ok, anscheinend gibt es keine Funktion, die das macht.

mkinzler 9. Apr 2008 09:27

Re: Extended in Integer Schreiben!
 
Was soll den Passieren, wenn die Zahl größer als 999 ist?

Rifman 9. Apr 2008 09:35

Re: Extended in Integer Schreiben!
 
Die Variable soll dann auf null zurücksetzt werden.

mkinzler 9. Apr 2008 09:37

Re: Extended in Integer Schreiben!
 
Dann musst du dir eine eigene Funktion dafür schreiben.

Klaus01 9. Apr 2008 09:54

Re: Extended in Integer Schreiben!
 
.. so würde es auch gehen:
Delphi-Quellcode:
Nachkommaanteil:= trunc((frac(FloatValue)*1000);
Zitat:

Zitat von DelphiHelp
Returns the fractional part of a real number.

function Frac(X: Extended): Extended;

Description

The Frac function returns the fractional part of the argument X.

X is a real-type expression. The result is the fractional part of X; that is, Frac(X) = X - Int(X).

Grüße
Klaus


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:47 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz