Currency na Integer

0

Jak zamienić Currency na Integer. Współrzędne mam policzone w Currency. na podstawie tych współrzędnych chę narysować linie. Tam potrzebne są współrzędne w posaci Integer. Jak to zrobić. Próbowałem Currency zamienić na Sting a następnie na Integner ale to nic niedaje.

0

Jak zamienić Currency na Integer. Współrzędne mam policzone w Currency. na podstawie tych współrzędnych chę narysować linie. Tam potrzebne są współrzędne w posaci Integer. Jak to zrobić. Próbowałem Currency zamienić na Sting a następnie na Integner ale to nic niedaje.

Floattostr zmienno przecinkowa na string
currtostr ---##---
strtocurr string na zmiennoprzecinkową
strtoint string na integer
floattoint zmienno przecinkowa na integer

powinno działać chyba że coś pomyliłem

//pozostałe
inttostr
strtoint
strpas
strPcopy
timetostr
datetostr
strtodate
strtotime

mogłem o czymś zapomnieć

0

co nie działa? u mnie działa, musi działać

function currTOint(cur:Currency):Integer;
begin
Result := StrToInt( CurrToStr(cur) );
end;
0
Integer := Round(Currency);
0

Trzeba troche pokombinować, żeby nie wyskoczyło 'invalid typecast' podczas kompilacji...

function curr2int64(i:currency):int64;
type temptype=array[boolean]of longint; // aby 8 bajtów, obojetny typ
begin
  curr2int64:=int64(temptype(i))div 10000; 
end;

z helpa :

Currency is a fixed-point data type that minimizes rounding errors in monetary calculations. It is stored as a scaled 64-bit integer with the four least-significant digits implicitly representing decimal places. When mixed with other real types in assignments and expressions, Currency values are automatically divided or multiplied by 10000.

// Wolverine... Moje będzie (dopisane: jeszcze) szybsze ;p

// piękne rzutowanie [prosze] - ŁF

// nom, int64(i) nie chciał kompilator rzutować rozmiarowo, tylko wartościowo, stąd invalid typecast (int64(real)), wiec trzeba było dodać jakis typ pośredni. Rzutowanie... Podstawa w (i naleciałośc z) c/cpp :d [mf]

1 użytkowników online, w tym zalogowanych: 0, gości: 1