Umwandlung von double in integer [duplizieren]
Diese Frage hat hier bereits eine Antwort:
C ++: Wie rundet man ein Double auf ein Int? [Duplikat 5 Antwortenround () für float in C ++ 20 answersIch stecke in einem Problem fest, bei dem die doppelte Zahl nicht richtig in eine ganze Zahl konvertiert wird.
In diesem Fall ->
int x=1000;
double cuberoot=pow(x,(1/(double)3));
int a=cuberoot;
cout<<"cuberoot="<<cuberoot<<endl;
cout<<"a="<<a<<endl;
Ausgabe
cuberoot=10
a=9
Warum hier a = 9 und nicht 10?
Jede Lösung für dieses Problem?
Auch ich möchte den Wert nicht runden..wenn a = 3.67, sollte er nur in 3 und nicht in 4 konvertiert werden.