Menu schließen

Dokumentation über Pascal-Dreieck bis 23.11

Frage: Dokumentation über Pascal-Dreieck bis 23.11
(3 Antworten)


Autor
Beiträge 0
13
Brauche Hilfe bei einer Doku,

ich soll das Pascalsche Dreieck in Java programmieren und
eine ausführliche Doku schreiben.
Das Problem:
Ich kapier Java überhaupt nicht und der Lehrer ist ne Niete im
lehren von Programmiersprachen, Mitschüler reagieren abweisend auf
Bitten um Hilfe -.-

Hab zwar einen Quellcode gefunden und leicht angepasst,
versteh aber so gut wie nix davon, geschweige denn, dass
ich darüber ausführlich berichten könnte.

Da ich die Doku dringend brauche (Donnerstag ist Abgabe, also bis Mittwoch),
wende ich mich nun an die Leute hier von e-hausaufgaben und bitte um eine baldige
Doku :(

Hier der Quellcode:

public class PascalschesDreieck {

public static int function_pascal(int zeile, int spalte) {
if (spalte==0 || spalte==zeile)
return 1;
return function_pascal(zeile-1,spalte) + function_pascal(zeile-1,spalte-1);
}

public static void main(String[] args) {
for (int zeile=0; zeile<10; zeile++) {
for (int spalte=0; spalte<=zeile; spalte++) {
System.out.print(function_pascal(zeile, spalte) + " ");
}
System.out.println();
}

}
}
Frage von JavaLotus (ehem. Mitglied) | am 20.11.2011 - 14:31


Autor
Beiträge 6489
9
Antwort von Peter | 20.11.2011 - 14:44
dein main-programm benutzt zwei for-schleifen: die eine sorgt für 10 zeilen, die andere für die anzahl der spalten (im pascalschen dreieck hast du in zeile 1 eine spalte, in zeile 2 zwei spalten, in zeile 3 drei spalten, usw.). danach rufst du für jede zeilen/spalten-kombination (jeden eintrag im dreieck) einmal die funktion auf, die du oben geschrieben hast. als letztes kommt innerhalb der for-schleife für die zeilen noch eine leerzeile, damit das ganze besser aussieht.


der funktion function_pascal werden zunächst zwei integer-parameter übergeben, die für zeile und spalte des aktuellen eintrags stehen. zunächst wird abgefragt, ob es die erste (0.) oder die letzte spalte in der zeile ist, wo ja immer eine 1 steht. wenn die bedingung erfüllt ist, wird die funktion nach "return 1;" beendet. wenn dies nicht der fall ist, wird die gleiche funktion nochmal für die beiden zahlen aufgerufen, aus denen sich der aktuelle eintrag berechnet. die funktion ruft sich also so lange selbst (rekursiv) auf, bis man in der ersten oder letzten spalte ist und damit eine 1 zurückgegeben wird.


macht dir die erklärung alles klar oder hakts noch irgendwo?
________________________
 e-Hausaufgaben.de - Team


Autor
Beiträge 0
13
Antwort von JavaLotus (ehem. Mitglied) | 20.11.2011 - 17:29
danke, das machts gleich viel verständlicher :)
ich denke jetzt kann ich ne doku dazu schreiben :)


Autor
Beiträge 0
13
Antwort von JavaLotus (ehem. Mitglied) | 20.11.2011 - 18:03
hab soweit alles verstanden, nur eine zeile bereitet mir noch kopfzerbrechen:

return function_pascal(zeile-1,spalte) + function_pascal(zeile-1,spalte-1);

was macht die? gibt die den anfang und das ende einer Spalte wieder oder wird da jeweils eine 1 eingetragen?

Verstoß melden Thread ist gesperrt
Hast Du eine eigene Frage an unsere Informatik-Experten?

> Du befindest dich hier: Support-Forum - Informatik
ÄHNLICHE FRAGEN:
BELIEBTE DOWNLOADS: