Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 5 odgovora
  • 1.682 pregleda

Najnovija ↓

Bug-ovi u Javi, molim pomoć 28.09.2011. u 10:38 · pre 183 meseca #1
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 !




Re: Bug-ovi u Javi, molim pomoć 28.09.2011. u 10:47 · pre 183 meseca #2
U kodu.

bb = 30864f/7f
Potpis
Sedam sutlijasa,
za sedam samuraja,
za sedam tramvaja.
Sviđa mi se1
Re: Bug-ovi u Javi, molim pomoć 28.09.2011. u 10:51 · pre 183 meseca
izmenjeno 1 put, poslednji put kiss_my 28.09.2011. u 11:11
  1. kiss_my28.09.2011. u 11:11zapis iz teksta poruke
#3
Hvala,ali....
Re: Bug-ovi u Javi, molim pomoć 28.09.2011. u 10:59 · pre 183 meseca #4
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?
Re: Bug-ovi u Javi, molim pomoć 28.09.2011. u 12:12 · pre 183 meseca #6
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.
Potpis
Sedam sutlijasa,
za sedam samuraja,
za sedam tramvaja.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme