Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Ustawianie precyzji wyświetlania liczby zmiennoprzecinkowej bez zaokrąglania

Ostatnio zmodyfikowano 2012-10-19 22:28
Autor Wiadomość
Savail
Temat założony przez niniejszego użytkownika
Ustawianie precyzji wyświetlania liczby zmiennoprzecinkowej bez zaokrąglania
» 2012-10-19 21:29:22
Hej,
Potrzebuję rozwiązania w języku C, więc jeśli ktoś miał już styczność z takim problemem to byłbym wdzięczny za pomoc!
Chodzi o to aby np. wyświetlić liczbę zmiennoprzecinkową do dwóch miejsc po przecinku ale żeby nie była na końcu zaokrąglona
P-67098
Savail
Temat założony przez niniejszego użytkownika
» 2012-10-19 21:44:28
Udało mi się rozwiązać problem.
Jeśli mam liczbę zmiennoprzecinkową np. float x i chcę ustawić jej precyzję na 2 miejsca po przecinku bez zaokrąglaniu na końcu to:
C/C++
float x =...;
float wynik_x =( float )(( int )( x * 100 ) ) / 100;
no a później to już tylko wyświetlić w ten sposób
printf( "%.2f", wynik_x );
P-67099
Dragonit
» 2012-10-19 21:48:16
printf( "%.2lf\n", d );

zobacz też tu:
http://www.cplusplus.com/reference/iostream/manipulators /setprecision/

Edit: nie zdążyłem :)
P-67100
Mrovqa
» 2012-10-19 22:28:13
@Dragonit faktycznie iomanip jest dostępne w C...
@Savail Twój kod w pewnych przypadkach może nie działać (nie zapisze konkretnej wartości) - wynika to z powodu kodowania liczb, jednakże może Ci wystarczy :)
P-67101
« 1 »
  Strona 1 z 1