rekursive Summenberechnung

Status
Nicht offen für weitere Antworten.
D

dark_Jeedee

Mitglied
Hi ich steh hier vor einem für mich unlösbaren problem.

Die Aufgabe lautet :

Entwickeln Sie eine rekursive Methode, die für einen positiven int Parameter n die Summe der ersten n Brüche 1/n als reelle Zahl zurückgibt.

Einer meiner kläglichen Versuche :


Code:
public static double add(int n)
{
if (n == 0)
{
return 0;
}
else
{

return (1/n)+(1/add(n-1));

}
}


ich hatte auch schon probiert mit math.pow(double n , -1)
und dann noch einen parameter x da rein zubringen das ich n-x habe und x dann hochzählen lasse aber das hat auch nicht geklappt.

Hoffe mir kann jemand helfen.

Gruß Tobi
 
Der Müde Joe

Der Müde Joe

Top Contributor
bei 0 kannst du nicht aufhören, da division durch 0 scheitert. Ein guter Zeitpunkt wäre 1.
Das add liefert schon 1/n + den nächsten Schritt: also 1/(n-1).
das 1/ (1/n-1) stimmt nicht. also reicht + add(n--)
 
D

dark_Jeedee

Mitglied
hey danke für die schnelle antwort. aber wenn ich den code so veränder

Code:
public static double add(int n)
{
if (n == 1)
{
return 1;
}
else
{

return (1/n)+ add(n--);

}

und das ganze dann zb für n = 4 durchlaufen lasse müsste irgendwas mit 2,08 rauskommen.
jedoch bekomm ich ne fehlermeldung "java.lang.StackOverflowError"
 
Der Müde Joe

Der Müde Joe

Top Contributor
hab den rasch bei mir getestet
Code:
    public static double add(int i){
        if(i == 1){
            return 1;
        }
        return 1d/i + add(--i);
    }

StackOverflow ja...bei so ca 5500
 
M

Marco13

Gesperrter Benutzer
dark_Jeedee hat gesagt.:
hey danke für die schnelle antwort. aber wenn ich den code so veränder

Code:
...
return (1/n)+ add(n--);

Dort wird ERST n an 'add' übergeben, und DANACH wird n um 1 verringert. Mit

return (1/n)+ add(--n); // Erst verringern, dann übergeben
oder
return (1/n)+ add(n-1); // Das Verringerte übergeben

würde es funktionieren
 
D

dark_Jeedee

Mitglied
guten morgen danke der code funktioniert jedoch müsste mir noch einer
erklären
Code:
return 1d/i + add(--i);
warum da ein "d" steht. dann bin ich glücklich ^^.
 
schalentier

schalentier

Gesperrter Benutzer
Wenn du das "d" weglaesst, dividiert Java 2 Integer, was in deinem Falle (n>=1) immer 0 liefern wuerde. Das "d" sagt dem Compiler, eine double 1 zu nehmen.

Du koenntest auch "1.0" oder "1." schreiben.

An deiner Stelle wuerde ich auch anstatt
Code:
return 1d/i + add(--i);

folgendes schreiben:

Code:
return 1d/i + add( i-1 );

Zudem wird ab einem entsprechend grossem i das Ergebnis mehr oder weniger stark verfaelscht. Du solltest dir deshalb mal die Klasse "BigDecimal" ansehen. Damit wird zwar alles langsamer, dafuer aber genau(er).
 
D

dark_Jeedee

Mitglied
kk mach ich vielen dank. ich bin nur erstmal froh dass die aufgabe abgearbeitet ist ^^
 
D

dark_Jeedee

Mitglied
hi ihr da draußen.
ich steh vor dem nächsten problem :oops:

Mein Problem ist erstmal das ich nichtmal einen Pseudocode zu dieser Aufgabe aufstellen kann.

Aufgabe:

Schreiben Sie eine rekursive Methode, die alle Zeichenketten mit drei Buchstaben ausgibt, die
aus den genetischen Codes A, C, G und T bestehen. ¨Uberlegen Sie zun¨achst, wie Sie alle Folgen
aus zwei Buchstaben erzeugen k¨onnen und erweitern Sie dann die gefundene L¨osung.
Die Ausgabe soll folgendes Aussehen haben: AAA AAC AAG AAT ACA ACC ACG ACT
AGA AGC usw.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
veryck Methoden Rekursive Methoden mit Rückgabeparameter Java Basics - Anfänger-Themen 9
macle Rekursive String Methode, Gerade Zahlen rausfiltern Java Basics - Anfänger-Themen 10
M Rekursive Prüfung ob ein Array sortiert ist... Java Basics - Anfänger-Themen 4
J Rekursive swapArray Methode Java Basics - Anfänger-Themen 69
D Rekursive Methode Java Basics - Anfänger-Themen 8
R Methoden rekursive Methoden Java Basics - Anfänger-Themen 6
O Quersumme rekursive Methode Java Basics - Anfänger-Themen 3
B Treetable (rekursive Funktion) aufbauen von Datenbank Java Basics - Anfänger-Themen 4
M Rekursive Methode Programmieren Java Basics - Anfänger-Themen 3
J rekursive Methode Java Basics - Anfänger-Themen 26
M rekursive division/0 mit exception Java Basics - Anfänger-Themen 18
J Rekursive Methode - Ziffern einer Zahl ausgeben Java Basics - Anfänger-Themen 2
M Rekursive Dateiliste erstellen mit Dateiendung(en) ?? Java Basics - Anfänger-Themen 4
S Rekursive Methode Java Basics - Anfänger-Themen 8
O Rekursive Methode Java Basics - Anfänger-Themen 4
V Methoden Rekursive Methode mit String als Rückgabe Java Basics - Anfänger-Themen 7
K Rekursive Methode Java Basics - Anfänger-Themen 1
K Rekursive Methode für Fakultät mit BigInteger Java Basics - Anfänger-Themen 10
L Rekursive Methode a * b berechnen Java Basics - Anfänger-Themen 2
L Rekursive Methode zur Berechnung der Potenz q hoch p Java Basics - Anfänger-Themen 17
J Methoden Rekursive Return Methode Java Basics - Anfänger-Themen 2
G Harmonische Rekursive Folge Java Basics - Anfänger-Themen 3
T Stack Overflow - Rekursive Fibonacci Java Basics - Anfänger-Themen 10
B Datentypen Suchbaum - Rekursive Ausgabe Java Basics - Anfänger-Themen 1
P Methoden Rekursive Methode für Potenzen Java Basics - Anfänger-Themen 2
M Methoden Binäre Suche als rekursive Variante Java Basics - Anfänger-Themen 5
B Rekursive Algorithmus schreiben Java Basics - Anfänger-Themen 8
S Eine rekursive Lösung Java Basics - Anfänger-Themen 4
S Int zu Hexadezimal - Rekursive Methode Java Basics - Anfänger-Themen 2
M Rekursive Suche in einem Feld Java Basics - Anfänger-Themen 11
N Rekursive Addition mit Scanner Java Basics - Anfänger-Themen 12
shiroX OOP Rekursive und Iterative Definition Java Basics - Anfänger-Themen 2
B Methoden Rekursive Methoden Java Basics - Anfänger-Themen 2
T Iterative Pi Berechnung in Rekursive Java Basics - Anfänger-Themen 2
C rekursive methode Java Basics - Anfänger-Themen 2
D Methoden Rekursive Methoden Java Basics - Anfänger-Themen 13
R rekursive Methode funktioniert nicht Java Basics - Anfänger-Themen 4
M Stürzen alle Rekursive Methoden irgendwann ab? Java Basics - Anfänger-Themen 11
D Primzahlen und Rekursive Liste Java Basics - Anfänger-Themen 29
R Rekursive Methode, Files finden Java Basics - Anfänger-Themen 2
S rekursive folge verbessern Java Basics - Anfänger-Themen 2
C rekursive Methode verstehe nicht! Java Basics - Anfänger-Themen 3
S Methoden rekursive Methode funktioniert nicht Java Basics - Anfänger-Themen 4
E Rekursive Methode Java Basics - Anfänger-Themen 3
N Methoden Rekursive Fibonaccizahlen mit Array Java Basics - Anfänger-Themen 2
R Rekursive Ausgabe eines Binärbaums Java Basics - Anfänger-Themen 4
J Methoden Rekursive Potenz ohne Math.Pow() Java Basics - Anfänger-Themen 9
A Rekursive Methode in Iterative umwandeln Java Basics - Anfänger-Themen 6
S Labyrith Rekursive Wegsuche Java Basics - Anfänger-Themen 4
C Rekursive Methode - Ziffern in Zahl Java Basics - Anfänger-Themen 33
U Dezimal zu Hexadezimal rekursive Funktion Java Basics - Anfänger-Themen 8
M rekursive Funktion zur Berechnung der Spiegelzahl Java Basics - Anfänger-Themen 7
L iterative und rekursive Folge Java Basics - Anfänger-Themen 20
G Rekursive Methode Java Basics - Anfänger-Themen 3
A rekursive Listen in Java? Java Basics - Anfänger-Themen 5
B OOP Einfach verkettete Liste - rekursive Methoden Java Basics - Anfänger-Themen 1
E Rekursive Methode mit Zufallsarray Java Basics - Anfänger-Themen 6
E Rekursive Methode Java Basics - Anfänger-Themen 18
U Rekursive lösung von pascal dreieck Java Basics - Anfänger-Themen 11
M Rekursive Methode - wo ist der Fehler? Java Basics - Anfänger-Themen 4
J rekursive methode Java Basics - Anfänger-Themen 6
H ScrollBar inaktiv / Rekursive Methode Java Basics - Anfänger-Themen 4
J Rekursive Methode Java Basics - Anfänger-Themen 11
G Rekursive Methode Java Basics - Anfänger-Themen 5
N Rekursive Berechnung der Höhe eines binären Baumes Java Basics - Anfänger-Themen 4
K Rekursive Methoden Java Basics - Anfänger-Themen 15
K Rekursive Funktion (Verständnissfrage) Java Basics - Anfänger-Themen 5
S Rekursive Bruch potenzierung Java Basics - Anfänger-Themen 2
J Rekursive Methode: Fakultaet berechnen Java Basics - Anfänger-Themen 5
E Rekursive definierten Folge Java Basics - Anfänger-Themen 10
A HILFE! Rekursive Funktion Java Basics - Anfänger-Themen 20
kulturfenster rekursive Binaere Suche Java Basics - Anfänger-Themen 12
F Rekursive Aufrufe, Parameterübergabe, call by reference Java Basics - Anfänger-Themen 3
G Rekursive Berechnung von n über k schlägt fehl Java Basics - Anfänger-Themen 5
B Rekursive & schreiben im ArrayList Java Basics - Anfänger-Themen 2
J Rekursive Fkt. Java Basics - Anfänger-Themen 2
A Rekursive Dateisuche Java Basics - Anfänger-Themen 12
K rekursive Funktion mit mehreren Parametern Java Basics - Anfänger-Themen 5
G rekursive Methode Java Basics - Anfänger-Themen 3
N rekursive Beispiele Java Basics - Anfänger-Themen 3
G rekursive u iterative Methode Java Basics - Anfänger-Themen 8
G Rekursive Methode Java Basics - Anfänger-Themen 7
ven000m Rekursive Funktionen - Frage Java Basics - Anfänger-Themen 16
D rekursive ausgabe einer zahl Java Basics - Anfänger-Themen 14
S Rekursive Funktionen in imperative Funktionen umwandeln Java Basics - Anfänger-Themen 2
M Rekursive Binärsuche Java Basics - Anfänger-Themen 6
S rekursive methoden Java Basics - Anfänger-Themen 5
Mxxxt Unverständnis bei Summenberechnung Gauß vs. For Java Basics - Anfänger-Themen 2
U problem bei summenberechnung Java Basics - Anfänger-Themen 2
C Summenberechnung in while Schleife Java Basics - Anfänger-Themen 4
S Summenberechnung Java Basics - Anfänger-Themen 15

Ähnliche Java Themen

Anzeige

Neue Themen


Oben