pow
-
Huhu!
Ich versuche grad die 12. Wurzel aus der Zahl 2 zu ziehen:printf("Wert: %f \n",pow(2,(1/12)));
Kann mir wer sagen wieso mir das Programm eine glatte 1 ausgibt?
-
Hallo,
Weil 1/12 0 ergibt.
Wenn nichts explicit bei den Zahlen angegeben ist welchen Typ sie haben und keine Kommastellen vorhanden sind wird int angenommen. Eine int-Division 1/12 ergibt halt 0.
Hier reicht es zu, wenn eine der Zahlen als float (oder double) erkennbar ist.printf("Wert: %f \n",pow(2.0,(1.0/12)));
-
std::cout << std::pow(2.0, (1.0/12.0)) << std::endl;... <cmath> und <iostream>