Witam
Czy jest jakiśbezbolesny sposób żeby zamienić liczbę integer na real i real na integer?
Jak wygląda zaokrąglanie w takich przypadkach?
- Rejestracja:prawie 21 lat
- Ostatnio:prawie 17 lat
czyli 10 / 3600 i bedziesz mial 0,002777...
I mamy liczbę zmiennoprzecinkową.
Ale mi chodziło o to żeby wynik moża było zapisać jako integer.
Czyli "calosc.reszta"
Jeśli reszta z dzielenia 10 / 3600 = 10, to wychodzą mi jakieś bzdury.
Chyba najłatwiej będzie to zrobić na liczbach real.
To nie jest jakiś skomplikowany program. Tylko się bawię i poznaję ten język więc mam z tym pewne kłopoty
- Rejestracja:ponad 22 lata
- Ostatnio:około 10 lat
Niestety ale zła wiadomość dla Ciebie.
Funkcja mod podaje resztę z dzielenia ale w jej 10 części.
trudno byłoby zpisać w INTEGER liczbę = 0022777 bo atomatycznie będzie to 22777
Możesz to zrobić tak :
- jeśli Ci zależy do 1/1000 to reszta:=(10*1000) div 3600
- 1/1000000 to reszta:=(10*1000000) div 3600
Najważniejsze to pomysł !!!

- Rejestracja:prawie 23 lata
- Ostatnio:29 minut
nie, czekajcie! nie chodziło mi o to aby zrezygnować z liczb zmiennoprzecinkowych, ale o to, ze klasyczny Real jest typem 6-bajtowym, który nie ma odwzorowania w typach procesora jak to flabra napisał. Mozna używać innych typów zmiennoprsecinkowych np. double.
Początwszy od Delphi 4 zdaje się type Real jest to to samo co typ Double, a klasyczny, Turbo pascalowy Real nazywa się Real48. Ale już w Delphi 8 i zapewne w przyszłym Diamondbacku określenia typu Real, jak i Real48 NIE MA. Tutaj chciałem jedynie podkreślić kwestię przyszłej kompatybilności.

- Rejestracja:ponad 22 lata
- Ostatnio:ponad 9 lat
Ja tylko chciałem wyprostować.. niektórzy źle rozumieją tu znaczenie słowa "mod" - reszta z dzielenia..
Weźmy przykład:
5 : 2 = 2.5
<font color="olive">5 div 2</span> - oznacza część całkowitą z dzielenia 5 przez 2, która jest równa 2
<font color="olive">5 mod 2</span> - oznacza resztę z dzielenia 5 przez 2, która nie jest równa 5 jak w zapisie 2.5.
Dzielę 5 przez 2. Dwójka mieści się 2 razy w liczbie 5 - to daje 4 - zostaje 1, i to jest właśnie 5 mod 2.
Inny przykład: 10 : 4
10 div 4 = 2
// Bo 2 razy się mieści
10 mod 4 = 2
// Bo tyle zostaje
A nie "10 mod 4 = 5" - to jest błąd!
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.