====== log() ======
log ist definiert in der ''[[start|math]]'', die in C über ''math.h'', bzw. in C++ über ''cmath'' eingebunden wird.
===== Funktion =====
log berechnet den natürlichen [[wpde>Logarithmus]], also zur Basis e, der Eulerschen Zahl, die etwa 2,7182818284590452 entspricht.
===== Signatur =====
#include
double log( double x );
float log( float x ); // nur C++
long double log( long double x ); // nur C++
**x**: Wert, dessen Logarithmus zur Basis e bestimmt werden soll \\
**Return value**: Wert, der als Potenz zu e ''x'' ergibt
===== Fehlerquellen =====
Wird als Parameter ein negativer Wert genommen, so wird die globale Variable [[c:lib:errno:start|errno]] auf EDOM gesetzt. Ist ''x'' gleich Null, so wird -[[HUGE_VAL]] zurückgegeben und [[c:lib:errno:start|errno]] auf ERANGE gesetzt.
===== Beispiel =====
#include // für EXIT_SUCCESS
#include // für log10
#include // für printf()
int main( void )
{
double value = 10000;
double power;
power = log( value );
printf( "e^%f entspricht %f\n", power, value );
return EXIT_SUCCESS;
}
Ausgabe:
e^9.210340 entspricht 10000.000000
===== Hinweis =====
Wer das Ergebnis des Beispielprogramms mit dem aus [[exp()]] vergleicht, wird feststellen, dass es hier zu Ungenauigkeiten kommt, die darin begründet liegen, dass Fließkommazahlen in den seltensten Fällen eine exakte Repräsentation von Zahlen ermöglichen.
===== siehe auch =====
[[c:lib:math:start|math]]: [[c:lib:math:exp()]], [[c:lib:math:pow()]], [[c:lib:math:log10()]] \\