MATRICE ALGORITHME

Ennoncer Exercice en Algorithme Matrice:

Écrire les procédures permettant de manipuler les matrices carrées de taille N (définie comme constante) et d'effectuer les opérations suivantes :

Addition de deux matrices.

Soustraction de deux matrices.

Transposée d'une matrice.

Calcul de la somme des éléments de la diagonale principale d'une matrice.

Calcul de la somme des éléments de la diagonale secondaire d'une matrice.

Écrire un algorithme principal permettant de faire appel à ces procédures et d'afficher les résultats des différentes opérations pour deux matrices données.

Solution

Algorithme Opérations sur les Matrices

Algorithme Opérations sur les Matrices

        Algorithme OperationsMatrices
            Constantes
                N ← 3 // Taille de la matrice carrée
            Variables
                mat1, mat2, resultat : tableau [1..N, 1..N] de Entier
                i, j : Entier

            Procédure AfficherMatrice(matrice : tableau [1..N, 1..N] de Entier)
                Pour i de 1 à N Faire
                    Pour j de 1 à N Faire
                        Ecrire(matrice[i, j], " ")
                    Fin Pour
                    Ecrire() // Passage à la ligne suivante
                Fin Pour
            Fin Procédure

            Procédure AdditionMatrices(mat1, mat2, resultat : tableau [1..N, 1..N] de Entier)
                Pour i de 1 à N Faire
                    Pour j de 1 à N Faire
                        resultat[i, j] ← mat1[i, j] + mat2[i, j]
                    Fin Pour
                Fin Pour
            Fin Procédure

            Procédure SoustractionMatrices(mat1, mat2, resultat : tableau [1..N, 1..N] de Entier)
                Pour i de 1 à N Faire
                    Pour j de 1 à N Faire
                        resultat[i, j] ← mat1[i, j] - mat2[i, j]
                    Fin Pour
                Fin Pour
            Fin Procédure

            Procédure TransposeeMatrice(matrice, resultat : tableau [1..N, 1..N] de Entier)
                Pour i de 1 à N Faire
                    Pour j de 1 à N Faire
                        resultat[j, i] ← matrice[i, j]
                    Fin Pour
                Fin Pour
            Fin Procédure

            Fonction SommeDiagonalePrincipale(matrice : tableau [1..N, 1..N] de Entier) : Entier
                Variables
                    somme : Entier
                Début
                    somme ← 0
                    Pour i de 1 à N Faire
                        somme ← somme + matrice[i, i]
                    Fin Pour
                    Retourner somme
                Fin
            Fin Fonction

            Fonction SommeDiagonaleSecondaire(matrice : tableau [1..N, 1..N] de Entier) : Entier
                Variables
                    somme : Entier
                Début
                    somme ← 0
                    Pour i de 1 à N Faire
                        somme ← somme + matrice[i, N - i + 1]
                    Fin Pour
                    Retourner somme
                Fin
            Fin Fonction

            // Programme Principal
            Début
                // Initialisation des matrices
                mat1 ← [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
                mat2 ← [[9, 8, 7], [6, 5, 4], [3, 2, 1]]
                
                Ecrire("Matrice 1 :")
                AfficherMatrice(mat1)

                Ecrire("Matrice 2 :")
                AfficherMatrice(mat2)

                // Addition des matrices
                AdditionMatrices(mat1, mat2, resultat)
                Ecrire("Addition des matrices :")
                AfficherMatrice(resultat)

                // Soustraction des matrices
                SoustractionMatrices(mat1, mat2, resultat)
                Ecrire("Soustraction des matrices :")
                AfficherMatrice(resultat)

                // Transposée de la matrice 1
                TransposeeMatrice(mat1, resultat)
                Ecrire("Transposée de la matrice 1 :")
                AfficherMatrice(resultat)

                // Somme des diagonales
                Ecrire("Somme de la diagonale principale de la matrice 1 : ", SommeDiagonalePrincipale(mat1))
                Ecrire("Somme de la diagonale secondaire de la matrice 1 : ", SommeDiagonaleSecondaire(mat1))
            Fin
    
1 vote. Moyenne 5 sur 5.

Ajouter un commentaire

Anti-spam