leçon 9 Les tableaux à deux dimensions –Matrices- [Link].
tn
Activité1
Donner le résultat d’affichage du script suivant :
#Python
for i in range(2):
for j in range(3):
print(i)
Correctio
n
Explication Exécution
:
j=0 print(i) I J résultat
0 0 0
i=0 j=1 print(i) 0 1 0
0 2 0
j=2 print(i)
On incrémente le compteur i de 1
j=0 print(i) 1 0 1
1 1 1
i=1 j=1 print(i) 1 2 1
j=2 print(i)
On affiche donc :
0
0
0
1
1
1
Activité2
Donner le résultat d’affichage du script
suivant :
for i in range(2):
for j in range(3):
print(i,’:’, j)
Correction I j résultat
0 0 0 : 0
i=0 0 1 0 : 1
0 2 0: 2
1 0 1 : 0
i=1 1 1 1 : 1
1 2 1 : 2
1
Résultat final :
0 : 0
0 : 1
0 : 2
1 : 0
1 : 1
1 : 2
Les tableaux à deux dimensions : Les Matrices
Exemple de matrice A de 3 lignes et 4 colonnes
A[0,0]=25 A[0,3]=0
25 35 2 0
A[1,0]=20 20 6 9 4
0 5 1 9
Saisir une matrice A de 3 lignes et 4 colonnes :
j
M[0,0] M[0,1] M[0,2] M[0,3]
M[1,0] M[1,1] M[1,2] M[1,3]
i
M[2,0] M[2,1] M[2,2] M[2,3]
Algorithme Python
Pour i de 0 à 1 faire for i in range(2)
for j in :
Pour j de 0 à 2 faire range(3)
A[I,j]=
Lire (A[i,j]) int(input())
Fin Pour
Fin Pour
2
Affichage matrice M :
Algorithme Python
Pour i de 0 à 1 faire for i in range(2)
for j in :
Pour j de 0 à 2 faire print(A[i,j] range(3)
)
ecrire(A[i,j])
Fin Pour
Fin Pour
Produit matrice par un
réel
Ecrire un programme qui réalise la multiplication d'une matrice A par un réel x.
Soit M la matrice suivante :
1 1 2
0 1 2 On multiplie M par 3 on obtient (tous les éléments sont multiplié par 3)
2 1 2
1 1 2 3 3 6
0 1 2 0 3 6
*3
2 1 2 6 1 6
3
Algorithme #Python
import numpy as np
Pour i de 0 à N-1 faire M = int(input('donner M'))# ligne
Pour j de 0 à M-1 N = int(input('donner n'))# colonne
faire A = [Link] ( [ [ int ( )] * N ] * M )
for i in range(M):
ecrire ("Saisir 'élement: ") for j in range(N):
lire(A[i,j]) A[i,j] = int(input("Saisir
FinPour 'élement: "))
FinPour x = int(input('donner x')) # saisir x f
ecrire ("donner x ") for i in range(M):
lire(x) for j in range(N):
A[i,j] = A[i,j]*x
Pour i de 0 à N-1 faire print(' Resultat') # Affichage matrice
Pour j de 0 à M-1 for i in range(M):
faire for j in range(N):
print(A[i,j],end=' ')
A[i,j] A[i,j]*x
print(end="\n")
FinPour
FinPour
ecrire('Resultat
')
Pour i de 0 à N-1 faire
Pour j de 0 à M-1
faire
ecrire(A[i,j]);
FinPour
4
Triangle de Pascal :
Exemple
Pour n = 5, le Triangle de Pascal affiche est le suivant :
Nous constatons que le calcul du contenu de la case (4,3) fait référence au
Contenu de deux ca ses (3,3) et (3, 2). C'est un traitement récurrent d'ordre 2.
5
Algorithme du programme principal et codification des objets
Algorithme Triangle_Pascal
Debut
Saisir (N)
Remplir_MAT (N, MAT)
Afficher_Triangle (N, MAT)
Fin
Tableau de codification des nouveaux types :
Algorithme de la procedure Remplir_MAT
6
Algorithme de la procedure Afficher_Triangle
Traduction en Python
# Python
import numpy as np
def saisir():
N = int(input('donner n'))
return N
# Saisir les éléments de A
def remplir(n, mat):
for i in range(n):
for j in range(i + 1):
if j == 0 or j ==
i:
mat[i, j] = 1
else:
7
mat[i, j] = mat[i - 1, j] + mat[i - 1, j - 1]
8
def afficher(N, mat):
for i in range(N):
for j in range(i + 1):
print(mat[i, j], end=" ")
print('\n')
N = saisir()
mat = [Link]([[int()] * N] * N)
remplir(N, mat)
afficher(N, mat)