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

Bug-ovi u Javi, molim pomoć

[es] :: Java :: Bug-ovi u Javi, molim pomoć

[ Pregleda: 1141 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

kiss_my

Član broj: 155099
Poruke: 5
*.dynamic.isp.telekom.rs.



+2 Profil

icon Bug-ovi u Javi, molim pomoć28.09.2011. u 09:38 - pre 153 meseci
Evo ovako,
naleteo sam na jedan Javin BUG...
o čemu se radi:

probajte da podelite 30864/7
kao rezultat dobićete 4409.0 umesto 4409,1428571428571428571428571429
koliko bi ste npr. dobili kada bi ste ova dva broja podelili u Windows-ovom kalkulatoru.

Ako npr. podelite 30.864/7 onda ćete dobiti tačnu vrednost : 4.409142857142857

Pošto sam početnik, navešću Vam tačno kako mi izgleda main metoda:


Code:
public static void main(String[] args) {
    double bb=0;
    bb=30864/7;
    System.out.println(bb); 
}



Od IDE okruženja koristim :
NetBeans IDE 7.0

Product Version: NetBeans IDE 7.0 (Build 201104080000)
Java: 1.6.0_26; Java HotSpot(TM) Client VM 20.1-b02
System: Windows XP version 5.1 running on x86; Cp1250; sr_CS (nb)
Userdir: C:\Documents and Settings\ja\.netbeans\7.0

Interesuje me u čemu je problem:
- u samoj JAVI (da li je u pitanju samo verzija 7.0) ?
- u IDE okruženju (da li je u pitanju NetBeans 7.0) ?
- ili je u pitanju moj kod ?

I još nešto: Zašto Windows-ov kalkulator ima veću preciznost izračunavanja od precisnosti izračunavanja u Javi?

Molim hitan i ozbiljan odgovor !




 
Odgovor na temu

3way

Član broj: 241428
Poruke: 1425



+2403 Profil

icon Re: Bug-ovi u Javi, molim pomoć28.09.2011. u 09:47 - pre 153 meseci
U kodu.

bb = 30864f/7f

Sedam sutlijasa,
za sedam samuraja,
za sedam tramvaja.
 
Odgovor na temu

kiss_my

Član broj: 155099
Poruke: 5
*.dynamic.isp.telekom.rs.



+2 Profil

icon Re: Bug-ovi u Javi, molim pomoć28.09.2011. u 09:51 - pre 153 meseci
Hvala,ali....

[Ovu poruku je menjao kiss_my dana 28.09.2011. u 11:11 GMT+1]
 
Odgovor na temu

kiss_my

Član broj: 155099
Poruke: 5
*.dynamic.isp.telekom.rs.



+2 Profil

icon Re: Bug-ovi u Javi, molim pomoć28.09.2011. u 09:59 - pre 153 meseci
Opet ima razlike između rezultata dobijenog u Javi i onog dobijenog u Windows-ovom kalkulatoru.

U prvom slučaju rezultat je : 4409.14306640625 (cod: bb=30864f/7f;)
ili čak 4409.142857142857 (cod: bb=30864d/7d;)

a u drugom : 4409,1428571428571428571428571429


Zašto?
Zna li neko?
 
Odgovor na temu

dule_ns
Novi Sad

Član broj: 123863
Poruke: 257
194.247.212.*



+690 Profil

icon Re: Bug-ovi u Javi, molim pomoć28.09.2011. u 11:10 - pre 153 meseci
Koristi BigDecimal
 
Odgovor na temu

3way

Član broj: 241428
Poruke: 1425



+2403 Profil

icon Re: Bug-ovi u Javi, molim pomoć28.09.2011. u 11:12 - pre 153 meseci
float zauzima 4 bajta, a double 8 (ako se ne varam)...Ako je pitanje zasto je double precizniji - to ti je odgovor. Predstavljanje decimalnih brojeva u racunari nije tako jednostavno kao predstavljanje celih i teoretski zahteva beskonacan prostor.
Sedam sutlijasa,
za sedam samuraja,
za sedam tramvaja.
 
Odgovor na temu

[es] :: Java :: Bug-ovi u Javi, molim pomoć

[ Pregleda: 1141 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

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