Dividieren von Ganzzahlen für ein Gleitkomma-Ergebnis
Trotz der Verwendung einer Gleitkommavariablen zum Speichern des Ergebnisses kann eine Ganzzahldivision zu einem Ergebnis führen abgeschnittene Ausgabe. Um dieses Problem zu lösen und gleichzeitig die Eingabevariablen als Ganzzahlen beizubehalten, ziehen Sie die folgende Lösung in Betracht:
Konvertieren Sie die Operanden explizit in Gleitkommazahlen:
float ans = (float)a / (float)b;
Dieser Umwandlungsvorgang zwingt den Compiler zur Ausführung von Gleitkommazahlen Division, wodurch ein Gleitkomma-Ergebnis gewährleistet wird, selbst wenn die Operanden ganze Zahlen sind. Das folgende Beispiel zeigt das erwartete Verhalten:
#include <iostream> #include <iomanip> using namespace std; int main() { int a = 10, b = 3; float ans = (float)a / (float)b; // Explicit casting to floats cout << fixed << setprecision(3); cout << ans << endl; // Floating-point result return 0; }
Das obige ist der detaillierte Inhalt vonWie erhalte ich ein Gleitkomma-Ergebnis aus der Ganzzahldivision in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!