Bonjour,

Je débute en python et je me suis fixer pour objectif de créer un programme qui détermine si une matrice donnée est une matrice identitée ou non. Pour l'instant, j'ai réussi toutes les étapes (ci-dessous mon code) mais je bloque sur la dernière partie, à savoir vérifier que toutes les valeurs autour de "la diagonale de 1" soient bien égales à 0. Je ne sais pas comment m'y prendre ni par où commencer. Merci d'avance pour votre aide !

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import os
 
mat = [
[1,2,7,1], 
[3,1,5,2], 
[5,5,1,4],
[5,5,1,1]
]
 
z = 0
x = 0
y = 0
verif1 = True
 
while True:
	try:
		a = len(mat[y])
		if a != len(mat[y - 1]):
			if len(mat) != len(mat[0]):
				print("C'est quoi cette matrice ?")
				verif1 = False
				break
			else:
				print("Il n'y a pas le même nombre de colonnes à chaque lignes")
				verif1 = False
				break
		y += 1
 
	except IndexError:
		break
 
 
	if len(mat) != len(mat[0]):
		print("Il n'y a pas le même nombre de colonnes et de lignes, ça n'est pas une matrice carrée !")
		verif1 = False
		break
 
while verif1 == True:
	try:
		for i in mat[x]:
			if (mat[x-1][z-1]) != (mat[x][z]):
				print("Ca n'est pas une matrice identitée")
				verif1 = False
				break
			x += 1
			z += 1
	except IndexError:
		break
 
os.system("pause")