Portál AbcLinuxu, 9. května 2025 00:22
double d=3.1415926535897931,d3; d3=(double)((long)(d*1000-.5))/1000.; // d3=3.141
d3=(double)((long)(d*1000+.5))/1000.; // d3=3.142Neni to moc videt, tak to jeste zkusim popsat - ta 0.5 by se mela pricitat, nikoli odecitat.
konverze (int) zkrouhne všechno za desetinnou čárkou, takže z 3.8 by to udělalo 3. Přičtením (díky za opravu) se 3.8+.5=4.3 zaokrouhlí na 4. Takže 2.5 včetně až 3.5 exclusive na 3 atd, jak se to běžně dělá.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.