AVENGER Opublikowano 31 Października 2003 Zgłoś Opublikowano 31 Października 2003 class bla { public static void main(String args[]) { double liczba; liczba = 0; liczba = 1.4; liczba += 0.2; System.out.println(String.valueOf(liczba));}} I niech ktos mi wytlumaczy dlateczego w wyniku dostaje 1.59999999999, moze matmy niedouczony jestem, ale jak dla mnie to jest 1.6. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
pshem Opublikowano 31 Października 2003 Zgłoś Opublikowano 31 Października 2003 sprobuj zmienic typ zmiennej z double na float. ew. poczytaj w manualu na temat klasy String, moze cos ciekawego sie dowiesz. a moze masz wadliwe pentium :wink: Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
rcube Opublikowano 31 Października 2003 Zgłoś Opublikowano 31 Października 2003 Jest to niedokładność spowodowana reprezentacją liczb zmiennoprzecinkowych w standardzie IEEE i żeby tego uniknąć to raczej trzeba zrobić własny format liczb - właśnie w postaci stringa, ale trzeba by też dorobić działania na tych liczbach... Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...