Einzelnen Beitrag anzeigen
Ungelesen 20.11.12, 22:51   #11
d03jo4n
OS X'ler
 
Benutzerbild von d03jo4n
 
Registriert seit: Aug 2012
Ort: /dev/random
Beiträge: 40
Bedankt: 8
d03jo4n ist noch neu hier! | 0 Respekt Punkte
Standard

Ich denke nicht, dass es dir viel bringt, wenn ich dir einfach meinen Code hier poste.
Falls du ihn haben willst, kannst du es ruhig sagen!

Im Endeffekt hast du zwei Möglichkeiten zur Implementierung:
1. Alles in ein paar Methoden
2. Mit Klassen

Da letzteres OOP wäre, würde ich das bevorzugen, da du aber sagst, dass du Anfänger seist,
habe ich das ganze mal nur mit Methoden implementiert.

Ich beschreibe dir einfach mal, was mein Algorithmus macht:

Er bekommt eine Matrix als Eingabe.
Dann erstellt er eine weitere (leere, also mit Nullen, Ergebnismatrix) und eine Kopie der Eingangsmatrix.

Es folgen vier Schleifen, die jeweils ineinander liegen.

Die äußere ist die Anzahl der Potenzen, zählt also einfach hoch.
Die zweite Schleife „geht“ die Matrix ( welche ist egal, da ja alle gleich groß sind ) zeilenweise durch. Die dritte Schleife geht spaltenweise, die vierte wieder Zeilenweise durch. Vor der letzten Schleife wird die aktuelle Zelle der Ergebnismatrix auf Null gesetzt, in der vierten Schleife findet dann die Aufsummierung statt. Dabei werden alle drei Matrizen genutzt.

Es wird wieder in die erste Schleife gesprungen, sobald die Matrix komplett addiert wurde.
Dort wird von der Ergebnismatrix eine Kopie erstellt und der „Kopiematrix“ zugewiesen, dann erfolgt die Ausgabe.

Der Teil mit den Schleifen ist das wichtigste und schwierigste, es war in meinem Kopf und es ist richtig, ich habe es mit einem Taschenrechner nachgerechnet.

Die Ausgabe meines Programms habe ich mal angehängt.

Code:
2. Potzenz:
            0             0             1             0 
            0             0             0             1 
           -1             1            -1             3 
           -3             2            -2             8 
3. Potzenz:
            0             0             0             1 
           -1             1            -1             3 
           -3             2            -2             8 
           -8             5            -6            22 
4. Potzenz:
           -1             1            -1             3 
           -3             2            -2             8 
           -8             5            -6            22 
          -22            14           -17            60 
5. Potzenz:
           -3             2            -2             8 
           -8             5            -6            22 
          -22            14           -17            60 
          -60            38           -46           163 
6. Potzenz:
           -8             5            -6            22 
          -22            14           -17            60 
          -60            38           -46           163 
         -163           103          -125           443 
7. Potzenz:
          -22            14           -17            60 
          -60            38           -46           163 
         -163           103          -125           443 
         -443           280          -340          1204 
8. Potzenz:
          -60            38           -46           163 
         -163           103          -125           443 
         -443           280          -340          1204 
        -1204           761          -924          3272 
9. Potzenz:
         -163           103          -125           443 
         -443           280          -340          1204 
        -1204           761          -924          3272 
        -3272          2068         -2511          8892 
10. Potzenz:
         -443           280          -340          1204 
        -1204           761          -924          3272 
        -3272          2068         -2511          8892 
        -8892          5620         -6824         24165 
11. Potzenz:
        -1204           761          -924          3272 
        -3272          2068         -2511          8892 
        -8892          5620         -6824         24165 
       -24165         15273        -18545         65671 
12. Potzenz:
        -3272          2068         -2511          8892 
        -8892          5620         -6824         24165 
       -24165         15273        -18545         65671 
       -65671         41506        -50398        178468 
13. Potzenz:
        -8892          5620         -6824         24165 
       -24165         15273        -18545         65671 
       -65671         41506        -50398        178468 
      -178468        112797       -136962        485006 
14. Potzenz:
       -24165         15273        -18545         65671 
       -65671         41506        -50398        178468 
      -178468        112797       -136962        485006 
      -485006        306538       -372209       1318056 
15. Potzenz:
       -65671         41506        -50398        178468 
      -178468        112797       -136962        485006 
      -485006        306538       -372209       1318056 
     -1318056        833050      -1011518       3581959
--

Wie gesagt: Wenn du den Source möchtest, kann ich ihn gerne posten.
d03jo4n ist offline   Mit Zitat antworten