Matrizenrechnen

Gast #5511597
Lesenswert?

Hallo Zusammen,

eine Matrix soll mit potenziert werden, leider passt das Ergebnis nicht 
und ich finde den Fehler nicht. DANKE für die Hilfe



int main() {
    int n, p;
    printf("Anzahl bzw. Zeilen Spalten: ");
    scanf("%d", &n);
    printf("Exponent: ");
    scanf("%d", &p);

    int m[n][n];
    int e[n][n];

    printf("Matrix Eingeben\n");
    for ( int a = 0 ; a < n ; a++ ) {
        for ( int d = 0 ; d < n ; d++ ) {
            printf("[%d][%d] = ", a+1, d+1);
            scanf("%d", &m[a][d]);
        }
    }

    int sum = 0;
    for (int i = 0; i < p; i++)
    {
        for ( int a = 0 ; a < n ; a++ )
        {
            for (int d = 0 ; d < n ; d++ )
            {
                for (int k = 0 ; k < n ; k++ )
                {
                    sum += m[a][k]*m[k][d];
                }
                e[a][d] = sum;
                sum = 0;
            }
         }

        for ( int a = 0 ; a < n ; a++ ) {
            for ( int d = 0 ; d < n ; d++ ) {
                m[a][d] = e[a][d];
                e[a][d] = 0;
            }
        }
    }

    printf("Ergebnis:-\n");

    for (int c = 0 ; c < n ; c++ )
    {
        for (int d = 0 ; d < n ; d++ )
        {
            printf("%d   ", m[c][d]);
        }
        printf("\n");
    }



getch();
return 0;
}
Gast #5511648
Lesenswert?

Wie wär's denn mit systematischer Fehlersuche (sprich einfachen Fall mit 
Papier und Bleistift durchrechnen, Zwischenergebnisse ausgeben lassen 
und vergleichen)???
So findet man ***DIE*** Fehler (ja, es sind mehrere!) ganz leicht --- 
wenn man sich auch nur etwas Mühe gibt. Aber von nix kommt halt  --- 
nix.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren