Hallo,
diese Art von Frage gab es zwar schon öfters aber leider passt kein Thema so recht zu meiner Aufgabe.
Mache gerade ein paar alte Klausurprüfungen durch und hänge bei einem rekursion Beispiel:
Abbruchbedingung wenn grad == 0, bei jedem Aufruf immer mit grad -=1 weitergehen.
Jetzt habe ich das Problem dass ich f nicht so einfach in der Methode deklarieren kann. Weiters versteh ich nicht wie ich die Berechnungen für a und f in der Methode zu schreiben sind ;(
Haben bis jetzt immer nur mit Strings und einfacheren Aufrufen gearbeitet. Würde mich über eine Antwort - auch Tipps zur Berechnung - freuen
lg
diese Art von Frage gab es zwar schon öfters aber leider passt kein Thema so recht zu meiner Aufgabe.
Mache gerade ein paar alte Klausurprüfungen durch und hänge bei einem rekursion Beispiel:
Code:
/**
* Berechnet eine Näherung von PI.
* Je größer grad ist, desto genauer
* ist die Näherung.
*
* Wandeln Sie die Methode in eine rekursive Methode um,
* sodass für die Implementierung keine Schleife
* benutzt wird.
*
* @param grad der Grad der Annäherung (grad >= 0).
* @return Die Näherung von PI zum Grad grad.
*/
public static double pi(int grad) {
//CHANGE THIS BLOCK
double f = 2.0;
for (int i = 1; i <= grad; i++) {
int a = 4*i*i;
f = f * a/(a - 1);
}
return f;
}
Abbruchbedingung wenn grad == 0, bei jedem Aufruf immer mit grad -=1 weitergehen.
Jetzt habe ich das Problem dass ich f nicht so einfach in der Methode deklarieren kann. Weiters versteh ich nicht wie ich die Berechnungen für a und f in der Methode zu schreiben sind ;(
Haben bis jetzt immer nur mit Strings und einfacheren Aufrufen gearbeitet. Würde mich über eine Antwort - auch Tipps zur Berechnung - freuen
lg