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

problem sa zaokruzivanjem

[es] :: C/C++ programiranje :: C/C++ za početnike :: problem sa zaokruzivanjem

[ Pregleda: 1924 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

brankec
Bosanski Brod

Član broj: 140157
Poruke: 161
*.teol.net.



Profil

icon problem sa zaokruzivanjem15.01.2009. u 20:41 - pre 185 meseci
Kako da rešim sledeći problem:

imam LONG promenljivu NETO i recimo vrednost te promenljive je 61070. Tu vrednost trebam da pomnožim sa 0.24 i rezultat stavim u drugu LONG promenljivu, recimo REZULTAT. Ako to uradim na sledeći način:

rezultat = neto*0.24;

dobiću da je rezultat 14656 (decimalni deo se odsječe). Ali meni treba da dobijem 14657, odnosno treba mi zaokružena vrednost a ne odsječena. Ovo je samo jedna proizvolja vrednost uzeta za neto (u praksi koristim matricu neto[]).
Nadam se da ste shvatili ovo izlaganje. Možda i ima neka funkcija koja ovo radi ali ja je ne znam. Pomozite.
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: problem sa zaokruzivanjem15.01.2009. u 22:10 - pre 185 meseci
Prouci funkcije ceil() i floor().

Ili recimo, tamo gde kazes:
rezultat = x * 0.24;

... napisi:
rezultat = zaokruzi( x * 0.24 );

I treba ti naravno ta prilagodjena funkcija:
LONG zaokruzi( double x )
{
return LONG( x + 0.5 );
}

Postoji tu js nekih caka i problema, pa je zato pametno da malo progooglas:
Google: "C%2B%2B rounding"
... i proucis o cemu se sve diskutuje.
 
Odgovor na temu

brankec
Bosanski Brod

Član broj: 140157
Poruke: 161
*.teol.net.



Profil

icon Re: problem sa zaokruzivanjem16.01.2009. u 18:31 - pre 185 meseci
Hvala ti X Files. Zahvaljujući tebi rešio sam problem.
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: problem sa zaokruzivanjem

[ Pregleda: 1924 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

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