[ Ice-D @ 27.12.2008. 09:40 ] @
Ako koristim tip double i u njega preko stringa unesem 3.01, on ga spremi kao 3.00999989999.., ako unesm 15.01, spremi ga kao 15.01000000..Govorimo o memoriji ( kad ga debagiram vidim vrednost) dok je konzolni output uredan. Ako koristim tip float, sve se spremi uredno, samo na manji broj decimal, 3.010000, 15.010000. Zbog čega, i kako da postignem točnost i sa tipom double? Code: int main () { float x; string xx; cin >> xx; istringstream iss ( xx ); iss >> x; return 0; } int main () { double x; string xx; cin >> xx; istringstream iss ( xx ); iss >> x; return 0; } |