Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (04:36:31 PM) stelian_nic89: pot sa-ti pun o intrebare tehnica, daca ai 2 secunde? :D m-a intrebat cineva o chestie pe care tin minte ca am discutat-o cu tine acum un an pe vremea asta
- (04:58:32 PM) george_aprozeanu: da
- (04:59:54 PM) stelian_nic89: in Java, daca ai nevoie de operatii cu numere reale si folosesti double, sunt toate sansele ca precizia sa nu fie foarte buna; dar folosind BigDecimal, obtii rezultatul exact
- (05:00:29 PM) stelian_nic89: de ce double nu are precizie buna :)
- (05:00:46 PM) stelian_nic89: am incercat si google, dar parca tin minte ca am vb cu tine de asta
- (05:00:55 PM) george_aprozeanu: pt ca de ex
- (05:00:57 PM) george_aprozeanu: 3
- (05:01:04 PM) george_aprozeanu: nu poate fi reprezentat exact
- (05:01:06 PM) george_aprozeanu: in double
- (05:01:14 PM) george_aprozeanu: e un numar cu zecimale
- (05:01:24 PM) stelian_nic89: ma rog, e 3.00
- (05:01:28 PM) stelian_nic89: nu?
- (05:01:31 PM) george_aprozeanu: nu nu
- (05:02:09 PM) george_aprozeanu: e un fel de 0.3
- (05:02:17 PM) george_aprozeanu: dar factorul
- (05:02:24 PM) george_aprozeanu: nu e zece la puterea unu
- (05:02:29 PM) george_aprozeanu: se reprezinta in functie de puterile lui 2
- (05:02:39 PM) george_aprozeanu: cu alte cuvinte se reprezinta 0.3 in baza 2
- (05:02:46 PM) george_aprozeanu: si nu se poate representa fara zecimale infinite
- (05:03:47 PM) george_aprozeanu: dar asta in sine e okl
- (05:03:52 PM) george_aprozeanu: ca exista mecanisme de corectie
- (05:04:10 PM) stelian_nic89: si undeva, in toata reprezentarea asta
- (05:04:12 PM) george_aprozeanu: care aduc calculele pe calea cea dreapta
- (05:04:13 PM) stelian_nic89: apare o lipsa de precizie
- (05:04:16 PM) stelian_nic89: :D
- (05:04:24 PM) george_aprozeanu: dar f multe numere nu pot fi reprezentate exact in double
- (05:04:39 PM) stelian_nic89: deci e mai mult.. aproximativ
- (05:04:45 PM) george_aprozeanu: si eroarea asta e ok
- (05:04:54 PM) george_aprozeanu: insa daca tu vii ca o floricica si zici
- (05:04:57 PM) george_aprozeanu: 3 miliarde
- (05:05:11 PM) george_aprozeanu: si faci o mutare practic cu 7 zerouri dupa virgula
- (05:05:15 PM) george_aprozeanu: tragi de eroarea aia putin
- (05:05:19 PM) george_aprozeanu: si s-ar putea sa fie relevanta
- (05:05:54 PM) george_aprozeanu: bigdecimal nu te scapa de e
- (05:05:59 PM) george_aprozeanu: exemplu
- (05:06:03 PM) george_aprozeanu: de problemele pe care le ai oricum
- (05:06:06 PM) george_aprozeanu: gen 1 / 3
- (05:06:09 PM) george_aprozeanu: e numar periodic
- (05:06:15 PM) stelian_nic89: da.. de chestii infinite normal ca nu te scapa
- (05:06:18 PM) george_aprozeanu: insa are rounding errors specifice
- (05:06:22 PM) george_aprozeanu: bazei 10
- (05:06:24 PM) george_aprozeanu: nu bazei 2 :)
- (05:06:38 PM) george_aprozeanu: o baza nu va avea rounding errors
- (05:06:50 PM) george_aprozeanu: la impartirile cu numerele compuse strict din factorii primi ai bazei
- (05:06:52 PM) george_aprozeanu: de ex la 10
- (05:06:55 PM) george_aprozeanu: avem 2 si 5
- (05:07:03 PM) george_aprozeanu: orice impartire la un multiplu de 2 si 5
- (05:07:06 PM) george_aprozeanu: nu va da perioada
- (05:07:09 PM) george_aprozeanu: orice altceva va da
- (05:07:14 PM) stelian_nic89: dap:D
- (05:07:15 PM) george_aprozeanu: baza 2 are doar 2 ca factor prim
- (05:07:41 PM) stelian_nic89: la asta nu m-am gandit
- (05:07:45 PM) george_aprozeanu: si programatic tu te astepti
- (05:07:50 PM) george_aprozeanu: sa ai probleme la 1/3
- (05:07:52 PM) stelian_nic89: pana acum.. ca 2 si 5 nu dau perioada pt ca sunt factorii primi ai bazei
- (05:07:53 PM) george_aprozeanu: dar nu si la 1/5
- (05:08:11 PM) george_aprozeanu: insa double are aceasta problema si tu nu stii de ea
Add Comment
Please, Sign In to add comment