Gibt es eine Funktion oder eine andere Möglichkeit, in C den Logarithmus der Basis x
zu berechnen, wobei x
eine ganzzahlige Variable meines Programms ist?Logarithmusfunktion einer beliebigen ganzzahligen Basis in C
11
A
Antwort
23
C bietet keine Funktionen zur Berechnung von Logarithmen anderer Basen als e
oder 10
.
Also nur Mathe verwenden:
logarithm of x base b = log(x)/log(b)
Wenn Sie die Logarithmen über die gleiche Basis wiederholt tun werden, können Sie 1/log(b)
vorauszuberechnen.
Ich würde mich nicht darauf verlassen, dass der Compiler diese Optimierung für Sie vornehmen kann.
Irgendwas stimmt nicht mit 'log (n)/log (x)'? – Mysticial