C Implementierung für Exponentialfunktion (e^x)?

... komplette Frage anzeigen

3 Antworten

unsigned int potenzieren(unsigned int basis, unsigned int expo)

{

unsigned int res = 1;

unsigned int term = basis;

while (expo)

{

if (expo & 1) {

res *= term;

}

term *= term;

expo = expo >> 1;

}

return res;

}
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von karajan9
09.07.2016, 17:58

Ich glaube der Code berechnet jetzt a^b wobei a und uint sind, nicht e^x?

0

Ich bin etwas verwirrt, wieso möchtest du das haben?

Ich glaube nicht, dass sowas schon existiert, denn die meisten, die eine Exponentialfunktion verwenden wollen, machen das eben mit den math-Funktionen.

War jetzt deine Frage, wie du es selbst implementieren müsstest?

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von LenLo
09.07.2016, 12:15

ja genau; wie muss der C-Code für eine eigene Implementierung aussehen?

0

https://de.m.wikipedia.org/wiki/Exponentialfunktion

Unter Numerische Berechnungsmethode

Die original Formel  würde ich nicht verwenden, da sie sehr langsam konvergiert, d.h. du musst viele Einzelglieder berechnen um ein einigermaßen genaues Ergebnis zu bekommen.

Hängt von deiner Anwendung ab. Was hast du denn vor?

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?