Heim >Backend-Entwicklung >C++ >Wie kann ich die wissenschaftliche Notation bei der Anzeige großer Gleitkommazahlen in C verhindern?
Auflösen der wissenschaftlichen Notation in der Cout-Ausgabe
In C führen die Standardgenauigkeits- und Formatspezifizierer für die numerische Ausgabe mit cout oft zu wissenschaftlicher Notation, insbesondere für große Gleitkommazahlen. Um dieses Problem zu beheben und Zahlen mit genauen Ziffern anzuzeigen, verwenden Sie den Stream-Manipulator std::fixed.
Bei Verwendung von std::fixed wird der Dezimalpunkt auf eine Standardgenauigkeit von 6 festgelegt, um sicherzustellen, dass Zahlen mit angezeigt werden Dezimalzahlen statt wissenschaftlicher Notation. Um dies im bereitgestellten Code zu veranschaulichen:
<code class="cpp">#include <iostream> #include <iomanip> int main() { double x = 1500; for (int k = 0; k < 10; k++) { double t = 0; for (int i = 0; i < 12; i++) { t += x * 0.0675; x += x * 0.0675; } std::cout << std::fixed << "Bas ana: " << x << "\tSon faiz: " << t << "\tSon ana: " << x + t << std::endl; } return 0; }</code>
Durch die Verwendung von std::fixed zeigt die Ausgabe jetzt Zahlen mit genauen Ziffern an, wodurch die wissenschaftliche Notation entfällt:
Bas ana: 3284.78 Son faiz: 1784.78 Son ana: 5069.55 Bas ana: 7193.17 Son faiz: 3908.4 Son ana: 11101.6 Bas ana: 15752.00 Son faiz: 8558.8 Son ana: 24310.8 Bas ana: 34494.50 Son faiz: 18742.5 Son ana: 53237.00 Bas ana: 75537.80 Son faiz: 41043.3 Son ana: 116581.00 Bas ana: 165417.00 Son faiz: 89878.7 Son ana: 255295.00 Bas ana: 362238.00 Son faiz: 196821.00 Son ana: 559059.00 Bas ana: 793246.00 Son faiz: 431009.00 Son ana: 1.22426e+006 Bas ana: 1.73709e+006 Son faiz: 943845.00 Son ana: 2.68094e+006 Bas ana: 3.80397e+006 Son faiz: 2.06688e+006 Son ana: 5.87085e+006
Das obige ist der detaillierte Inhalt vonWie kann ich die wissenschaftliche Notation bei der Anzeige großer Gleitkommazahlen in C verhindern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!