Science >> Wetenschap >  >> Wiskunde

Som van alle diagonalen een vierkante matrix met behulp van C?

`` `C

#include

int main () {

int n, i, j, sum =0;

// Krijg de grootte van de vierkante matrix

printf ("Voer de grootte van de vierkante matrix in:");

scanf ("%d", &n);

// Verklaar een 2D -array om de matrixelementen op te slaan

int matrix [n] [n];

// Haal de matrixelementen van de gebruiker

printf ("Voer de elementen van de matrix in:\ n");

voor (i =0; i voor (j =0; j scanf ("%d", &matrix [i] [j]);

}

}

// Bereken de som van de diagonalen

voor (i =0; i // som van de primaire diagonaal (linksboven naar beneden-rechts)

som +=matrix [i] [i];

// som van de secundaire diagonaal (linksrecht tot linksboven)

som +=matrix [i] [n - i - 1];

}

// Druk de som van de diagonalen af

printf ("som van alle diagonalen van de matrix:%d \ n", som);

retourneer 0;

}

`` `

Verklaring:

1. Voeg koptekst toe: `#include ` bevat de standaardinvoer-/uitvoerbibliotheek voor functies zoals `printf` en` scanf`.

2. Variabelen verklaren:

- `N`:slaat de grootte van de vierkante matrix op.

- `I`,` J`:looptellers voor het itereren door de matrix.

- `Sum`:slaat de som van de diagonale elementen op.

3. Matrixgrootte ophalen: De code vraagt ​​de gebruiker om de grootte van de vierkante matrix in te voeren en slaat deze op in `n`.

4. Matrix verklaren: Een 2D -array `matrix` wordt verklaard om de matrixelementen op te slaan. De grootte is `n x n`.

5. Invoermatrixelementen: De code neemt de matrixelementen als invoer van de gebruiker en slaat ze op in de `matrix' -array.

6. Bereken diagonale som:

- De code gebruikt geneste lussen om door de matrix te herhalen.

-Binnen de lussen voegt het het element toe aan `matrix [i] [i]` aan `sum`, die overeenkomt met de primaire diagonaal (links links naar beneden).

- Het voegt ook het element toe bij `matrix [i] [n - i - 1]` tot `sum`, die overeenkomt met de secundaire diagonaal (rechts rechts tot links).

7. Afdruksum: Ten slotte drukt de code de `sum` van de diagonalen naar de console af.

Voorbeeld:

invoer:

`` `

Voer de grootte van de vierkante matrix in:3

Voer de elementen van de matrix in:

1 2 3

4 5 6

7 8 9

`` `

Uitgang:

`` `

Som van alle diagonalen van de matrix:25

`` `

In dit voorbeeld is de som van de diagonalen (1+5+9+3+5+7) 25.