BTS−SIO:TD 7
Les Matrices : gestion sous Python
2015-2016I Représentation
En langage Python, on peut représenter une matrice par une liste de listes.
Toutes les commandes que l’on a vues sur les listes sont donc utilisables.
Exemple 1 :
Soit une matriceM =
1 2 3 4 5 6
En utilisant l’interpréteur dePython,
⊲ Saisie de la matrice :
⊲ Que renvoie M[0]? :
⊲ Que renvoie M[1]? :
⊲ Que renvoie M[1][2]? :
⊲ Que renvoie M[0][2]? :
⊲ Que renvoie len(M)? :
⊲ Que renvoie len(M[1])? :
II Exercices
EXERCICE 1 Écrire un algoritme qui remplit une matrice d’entiers entre 1 et 100 choisis aléatoirement. Le nombre de lignes et de colonnes devra être choisi par l’utilisateur.
• La commande randrange(1,101) nécessaire pour le choix d’un nombre aléatoire entre 1 et 100 est accessible après avoir importé le module random : from random import *
• L’initialisation d’une liste A se fait de la façon suivante : A = [ ].
• A est une liste de liste d’entiers et L une liste d’entiers.
La commande L.append(n) ou L = L + [n] ajoute l’entier n à la liste L.
La commande A.append(L) ou A = A + [L] ajoute la liste L à la liste de listes A.
• • •
EXERCICE 2 Écrire une fonction saisiecoefficients qui permet la saisie coefficient par coefficient d’une matrice après avoir spécifié le nombre de lignes et de colonnes. Prévoir l’affichage de la matrice. Lorsque la fonction est appelée dans un programme, on peut imaginer une « présentation » de la forme
• • •
My Maths Space 1 sur 2
BTS−SIO:TD 7
Les Matrices : gestion sous Python
2015-2016EXERCICE 3 Créer une procédure affiche_matrice qui admet une matrice comme paramètre et qui permet l’af- fichage de la matrice ligne par ligne.
• • •
EXERCICE 4 Écrire une fonction soustraction ayant comme paramètres deux matrices X et Y de même taille, qui permet de « construire » une matrice Z de même taille que les deux précédentes dont les coefficients résultent de la soustraction Z = X − Y . Prévoir l’affichage de la matrice Z ainsi construite.
Écrire un programme qui utilise la fonction saisiecoefficients (cf.Ex 2) pour saisir les coefficients de A =
1 2 0 −2
3 1 −2 −1
1 0 −2 1
et de B =
0 3 −1 −3
5 1 1 0
−1 −3 0 1
, et qui permet de calculer les coefficients de la matrice C = A − B
(source : devoir sur les matrices - ex 1 - M.HORGUE).
info : la taille d’une matrice est le couple (nl, nc) où nl est le nombre de lignes et nc est le nombre de colonnes.
remarque : une fonction addition permettant l’addition de deux matrices est quasiment identique à la fonction soustraction.
• • •
EXERCICE 5 Écrire une fonction ayant comme paramètres une matrice X et un scalaire (nombre) k, qui permet de « construire » une matrice Y de même taille que la précédente dont les coefficients résultent du « produit » Y = kX. Prévoir l’affichage de la matrice Y ainsi construite.
Écrire un programme qui permet de calculer les coefficients de la matrice D = − 1
2 A, A étant la matrice donnée à l’exercice précédent.
Intégrer au programme la construction de la matrice E = 3A − 2B, B est la matrice de l’exercice précédent.
(source : devoir sur les matrices - ex 1 - M.HORGUE).
• • •
My Maths Space 2 sur 2