Liczby po przecinku
Ostatnio zmodyfikowano 2021-08-23 10:51
krystian123456 Temat założony przez niniejszego użytkownika |
Liczby po przecinku » 2021-08-23 10:26:05 Jak zrobić żeby liczby wyświetlały po przecinku? Poniższy program pokazuje samo 0 . #include <iostream> #include <iomanip> int main() { std::setprecision( 5 ); double l; l = 3 / 4; std::cout << l << std::endl; return 0; }
|
|
DejaVu |
» 2021-08-23 10:28:17 double l; l = 3 / 4; l = 3 / 4.0; |
|
krystian123456 Temat założony przez niniejszego użytkownika |
» 2021-08-23 10:36:04 A jak do tego ustawić ile miejsc chce po przecinku początkowa setprecision(liczba) nic nie zmienia w wyjściowej wartości |
|
DejaVu |
» 2021-08-23 10:38:09 std::setprecision ustawia maksymalną ilość miejsc po przecinku, a nie stałą liczbę miejsc po przecinku. Czyli jak będziesz miał liczbę: l = 2 / 3.0; to wówczas wypisze Ci te 5 miejsc po przecinku. Jeżeli liczba będzie krótsza to nie wyświetli nieznaczących zer. Jeżeli chcesz zmienić sposób prezentowania wyników to poczytaj o std::fixed: - https://www.cplusplus.com/reference/ios/fixed/- https://en.cppreference.com/w/cpp/io/manip/fixedPrzykład: #include <iostream>
int main() { double a = 3.1415926534; double b = 2006.0; double c = 1.0e-10; std::cout.precision( 5 ); std::cout << std::fixed; std::cout << a << '\n' << b << '\n' << c << '\n'; return 0; }
|
|
krystian123456 Temat założony przez niniejszego użytkownika |
» 2021-08-23 10:49:19 Czyli dlaczego pierwszy wynik daje 10 liczb po przecinku , a drugi wyświetla dwie liczby po przecinku ? #include <iostream> #include <iomanip> using namespace std; int main() { double l; double m = 324; double o = 4353; l = m / o; cout << setprecision( 9 ) << l << endl; cout << setprecision( 0 ) << l << endl; return 0; }
|
|
DejaVu |
» 2021-08-23 10:51:35 Pewnie musisz poczytać dokumentację, aby doczytać się jakie zachowanie jest biblioteki, gdy podasz wartość '0'. |
|
« 1 » |