Studium, Ausbildung und Beruf
 StudiumHome   FAQFAQ   RegelnRegeln   SuchenSuchen    RegistrierenRegistrieren   LoginLogin

Problem mit Rekursion
Neues Thema eröffnen   Neue Antwort erstellen
Foren-Übersicht -> Informatik-Forum -> Problem mit Rekursion
 
Autor Nachricht
Starfox
Newbie
Benutzer-Profile anzeigen
Newbie


Anmeldungsdatum: 29.03.2007
Beiträge: 25

BeitragVerfasst am: 05 Feb 2008 - 21:00:03    Titel: Problem mit Rekursion

Hallo, ich habe hier eine Methode, die als Ergebnis die verschiedenen Werte des Arrays multipliziert und anschließend die Ergebnisse miteinander addiert.
Allerdings erhalte ich beim kompilieren immer folgende Fehlermeldung:
'.class' expected. Hier ist meine Methode:

public class SummeM
{
static int SummeMi(int[] a, int index){
if (index == a.length){
return 0;
}
else return (a[index] * a[index] + SummeMi(int[] a, index++))
}
}
Kann jemand erkennen warum immer diese Fehlermeldung kommt?
Starfox
Newbie
Benutzer-Profile anzeigen
Newbie


Anmeldungsdatum: 29.03.2007
Beiträge: 25

BeitragVerfasst am: 05 Feb 2008 - 21:46:09    Titel:

Oh....ich hab die Lösung für das Problem gefunden. Very Happy
Argi
Senior Member
Benutzer-Profile anzeigen
Senior Member


Anmeldungsdatum: 28.02.2007
Beiträge: 1404

BeitragVerfasst am: 05 Feb 2008 - 22:05:53    Titel:

Manchmal frage ich mich, wo der Sinn in einer auf eine Frage folgenden Entwarnung steht, wenn man die Lösung nicht dazu schreibt? War es so was peinliches? ;ö)
robeukma
Full Member
Benutzer-Profile anzeigen
Full Member


Anmeldungsdatum: 31.01.2008
Beiträge: 278

BeitragVerfasst am: 06 Feb 2008 - 09:06:15    Titel:

Argi hat folgendes geschrieben:
Manchmal frage ich mich, wo der Sinn in einer auf eine Frage folgenden Entwarnung steht, wenn man die Lösung nicht dazu schreibt? War es so was peinliches? ;ö)


Wenn als Fehler ".class expected" kommt, kann man davon ausgehen, ja ^^
Starfox
Newbie
Benutzer-Profile anzeigen
Newbie


Anmeldungsdatum: 29.03.2007
Beiträge: 25

BeitragVerfasst am: 11 Feb 2008 - 14:11:33    Titel:

Nee, der Fehler war, dass ich beim Rekursionsaufruf index++ geschrieben habe, da hätte aber ++index stehen müssen, dann gehts! Wink

Aber da stellt sich mir dann schon wieder eine neue Frage und dieses Mal zum Thema Listen, vielleicht kann mir da ja dieses Mal wirklich jemand helfen! Wink
Die Aufgabe ist, dass man in einer Liste das Maximum finden soll und das ganze soll rekursiv ablaufen.
Ich hab das nun so gelöst:
public static int Max(Element temp){
int max=0;
if(temp == null){
return max;
}
else{
if(max < temp.werte){
max = temp.werte;
}
return Max(temp.next);
}
}
}


Bekomme jedoch egal was ich eingebe immer die Lösung 0 als Maximum. Hmm... also ich hab natürlich noch weitere Methoden um diese ordnungsgemäß aufrufen zu können und das hat immer funktioniert, also muss es speziell an dieser Methode liegen, aber ich finde den Fehler nicht....liegt wohl daran, dass ich blutiger Anfänger bin.
Über Antworten würde ich mich sehr freuen!
sarc
Senior Member
Benutzer-Profile anzeigen
Senior Member


Anmeldungsdatum: 21.09.2006
Beiträge: 2657

BeitragVerfasst am: 11 Feb 2008 - 14:43:48    Titel:

Das Problem ist, dass du bei jedem Funktionsaufruf max wieder auf 0 setzt. Allerdings sollte das maximale Element aufrufübergreifend zur Verfügung stehen. Dafür gibts prinzipiell mehrere Möglichkeiten, wie man das erreichen kann. Eine davon ist extrem hässlich (Attribut als globale Variable missbrauchen) und sollte tunlichst vermieden werden! Die anderen beiden darfst du dir selbst überlegen... Wink
Beiträge der letzten Zeit anzeigen:   
Foren-Übersicht -> Informatik-Forum -> Problem mit Rekursion
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

Chat :: Nachrichten:: Lexikon :: Bücher :: Impressum