0 Daumen
815 Aufrufe

Frage:

Wie implementiere ich eine Funktion, die die n-te Wurzel einer Zahl x berechnet, wobei n und x natürliche Zahlen sind ohne die math.h Bibliothek?


Eigentlich müsste ich nur eine pow-Funktion selber schreiben, die ein Bruch als Exponenten annehmen und richtig berechnen kann. Dann müsste ich nur x und 1/n dieser pow-Funktion übergeben, aber leider klappen meine Ansäte nicht.

Wie würdet ihr dieses Problem angehen? Mir gehen die Ideen aus.

Avatar von

1 Antwort

0 Daumen
 
Beste Antwort

Deine Idee ist komplett richtig, es gilt \(x^{1/n}=\sqrt[n]{x}\). Mache dir eine Funktion, die die Potenz \(a^b\) berechnet. Außerdem erstelle noch eine Funktion, die aus \(n\mapsto\frac{1}{n}\) macht. Dann kannst du die direkt für das Berechnen von der Wurzel benutzen: (Pseudocode, du hast die Funktionen ja noch nicht erstellt):

/**
* Berechnet die n-te Wurzel
*/
double nteWurzel(double n, double x)
{
double wurzel = potenz(x, teile(n)); // x^(1/n) = sqrt[n]{x}
return wurzel;
}
Avatar von

Danke dir für die Hilfe!

Kein Problem :)

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community