Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Zaokruživanje brojeva

[es] :: Pascal / Delphi / Kylix :: Zaokruživanje brojeva

[ Pregleda: 4261 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

star13

Član broj: 5762
Poruke: 8
*.net.hinet.hr



Profil

icon Zaokruživanje brojeva12.10.2002. u 17:40 - pre 261 meseci
Prilikom matematičke operacije (npr. drugi korijen iz 2 = 1.4142....), ako je varijabla tipa Real, iznos se upisuje u datoteku sa cca 15 znamenaka. No prije upisa u datoteku potrebno je taj iznos zaokružiti na dvije znamenke (sukladno pravilima zaokruživanja dakle iznos 1.415 kao 1.42 ili 1.414 kao 1.41) Tražim najjednostavini način kako to učiniti sa što manje koda jer se operacije izračunavanja rade u pozadini sa iznosima polja datoteke.

Ovako npr.

with Table1 do
begin
Insert;
FieldValues('Iznos') := SQRT(2);
Post;
end;

Dakle potrebno je zaokružiti rezultat SQRT(2) na dvije znamenke i to na što jednostavniji način.
 
Odgovor na temu

goblin
Milan Aleksic
Gtech Belgrade, Sofware Engineer II
Beograd

Član broj: 4055
Poruke: 85
*.ptt.yu

Jabber: milanaleksic@gmail.com
Sajt: www.milanaleksic.net


Profil

icon Re: Zaokruživanje brojeva12.10.2002. u 21:51 - pre 261 meseci
Pomnozi sa sto pa pozovi round(), pa ponovo podeli sa sto.
Don't try to impress me... I'm good !
 
Odgovor na temu

Ilija Studen
Novi Sad

Član broj: 3864
Poruke: 859
*.inpoint.net

Sajt: www.activecollab.com


+1 Profil

icon Re: Zaokruživanje brojeva14.10.2002. u 11:32 - pre 261 meseci
Ja obicno koristim funkciju FormatFloat, ali nisam siguran da li ce pravilno zaokruziti (nisam kod kuce da probam). Uglavnom, kod bi trebalo da izgleda ovako:

var
Promenljiva: Real;
s: string;
begin
Promenljiva := 0.125479617927;
s := FormatFloat('.00', Promenljiva);
end;

U Helpu imas kompletno objasnjenje funkcije.

Ako ti treba realna vrednost onda samo dobijeni string prebaci u Real pomocu StrToFloat funkcije.

Kada sve zavrsis trebalo bi da bude jedna linija koda, a to je, cini mi se, ono sto zelis...

Pozdrav
http://www.activecollab.com - Alat za upravljanje projektima
 
Odgovor na temu

star13

Član broj: 5762
Poruke: 8
*.net.hinet.hr



Profil

icon Re: Zaokruživanje brojeva15.10.2002. u 16:58 - pre 261 meseci
Hvala, hvala. Najednostavnije riješenje je množiti sa 100 pozvati round i podijeliti sa sto. Naredba FormatFloat je jednostavnija od načina na koji sam ja to radio no dosta je slična naredbi str i val. Ima manje koda.
U svakom slučaju hvala svima.
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
62.108.114.*

Sajt: localhost


+5 Profil

icon Re: Zaokruživanje brojeva16.10.2002. u 03:36 - pre 261 meseci
pogledajte funkcije RoundTo() i SimpleRoundTo()..

primer: RoundTo(1.234, -2) daje rezultat 1.23 .
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Zaokruživanje brojeva

[ Pregleda: 4261 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.