mirror of
https://github.com/Fare-spec/cours.git
synced 2025-12-08 03:00:37 +00:00
first commit
This commit is contained in:
11
magic_square/TDliste2liste/exercice1.py
Normal file
11
magic_square/TDliste2liste/exercice1.py
Normal file
@@ -0,0 +1,11 @@
|
||||
def appartient(elt,tableau):
|
||||
for i in tableau:
|
||||
if i == elt:
|
||||
return True
|
||||
else:
|
||||
continue
|
||||
return False
|
||||
|
||||
if __name__ == "__main__":
|
||||
print(appartient(5,[1,2,3,4,5,6,7,8,9,10]))
|
||||
print(appartient(5,[1,2,3,4,6,7,8,9,10]))
|
||||
21
magic_square/TDliste2liste/exercice2.py
Normal file
21
magic_square/TDliste2liste/exercice2.py
Normal file
@@ -0,0 +1,21 @@
|
||||
def max_local(tableau):
|
||||
maximum = tableau[0]
|
||||
for i in tableau:
|
||||
if i > maximum:
|
||||
maximum = i
|
||||
else:
|
||||
continue
|
||||
return maximum
|
||||
|
||||
def indice_max(tableau):
|
||||
maximum = max_local(tableau)
|
||||
for i in range(len(tableau)):
|
||||
if tableau[i] == maximum:
|
||||
return i
|
||||
else:
|
||||
continue
|
||||
|
||||
if __name__ == "__main__":
|
||||
l1 = [0,2,3,4,5,6,7,8,9,90,91,59,1]
|
||||
print(max_local(l1))
|
||||
print(indice_max(l1))
|
||||
8
magic_square/TDliste2liste/exercice3.py
Normal file
8
magic_square/TDliste2liste/exercice3.py
Normal file
@@ -0,0 +1,8 @@
|
||||
def cree_tableau_n_m(n,m):
|
||||
return [[0 for _ in range(m)] for _ in range(n)]
|
||||
|
||||
def cree_tableau_carre_n(n):
|
||||
return [[0 for _ in range(n)] for _ in range(n)]
|
||||
if __name__ == "__main__":
|
||||
print(cree_tableau_n_m(3,5))
|
||||
print(cree_tableau_carre_n(5))
|
||||
12
magic_square/TDliste2liste/exercice4.py
Normal file
12
magic_square/TDliste2liste/exercice4.py
Normal file
@@ -0,0 +1,12 @@
|
||||
def cree_carre_entier_1_n_carre(n):
|
||||
carre = []
|
||||
compteur = 1
|
||||
for i in range(n):
|
||||
ligne = []
|
||||
for j in range(n):
|
||||
ligne.append(compteur)
|
||||
compteur += 1
|
||||
carre.append(ligne)
|
||||
return carre
|
||||
print(cree_carre_entier_1_n_carre(8))
|
||||
|
||||
9
magic_square/TDliste2liste/exercice5.py
Normal file
9
magic_square/TDliste2liste/exercice5.py
Normal file
@@ -0,0 +1,9 @@
|
||||
def transpose(carre):
|
||||
n = len(carre) # Nombre de lignes (ou colonnes, car c'est une matrice carrée)
|
||||
return [[carre[j][i] for j in range(n)] for i in range(n)]
|
||||
|
||||
def transpose_en_place(carre):
|
||||
n = len(carre) # Nombre de lignes (ou colonnes)
|
||||
for i in range(n):
|
||||
for j in range(i + 1, n): # Commencer à j = i + 1 pour éviter de réécrire les éléments déjà transposés
|
||||
carre[i][j], carre[j][i] = carre[j][i], carre[i][j] # Échange des éléments
|
||||
9
magic_square/TDliste2liste/exercice6.py
Normal file
9
magic_square/TDliste2liste/exercice6.py
Normal file
@@ -0,0 +1,9 @@
|
||||
def diag_1(carre):
|
||||
return [carre[i][i] for i in range(len(carre))]
|
||||
|
||||
def diag_2(carre):
|
||||
n = len(carre)
|
||||
return [carre[i][n - 1 - i] for i in range(n)]
|
||||
|
||||
def colonne(j, carre):
|
||||
return [carre[i][j] for i in range(len(carre))]
|
||||
48
magic_square/magic_square.py
Normal file
48
magic_square/magic_square.py
Normal file
@@ -0,0 +1,48 @@
|
||||
from TDliste2liste.exercice6 import diag_1, diag_2, colonne
|
||||
def check_diagonale(liste):
|
||||
return diag1(liste), diag2(liste)
|
||||
def check_colonne(liste):
|
||||
somme = []
|
||||
for i in range(len(liste)):
|
||||
somme.append(colonne(i,liste))
|
||||
return somme
|
||||
def check_line(liste):
|
||||
somme = []
|
||||
for i in range(len(liste)):
|
||||
somme.append(sum(liste[i]))
|
||||
return somme
|
||||
|
||||
def check_all(carre):
|
||||
diag1_values, diag2_values = check_diagonale(carre)
|
||||
colonne_values = check_colonne(carre)
|
||||
line_values = check_line(carre)
|
||||
|
||||
# On récupère la première valeur de diag1 pour la comparaison
|
||||
reference_value = diag1_values[0] if diag1_values else None
|
||||
|
||||
# Vérification si toutes les valeurs sont les mêmes
|
||||
all_same = True
|
||||
|
||||
# Vérification des diagonales
|
||||
if not all(value == reference_value for value in diag1_values):
|
||||
all_same = False
|
||||
|
||||
if not all(value == reference_value for value in diag2_values):
|
||||
all_same = False
|
||||
|
||||
# Vérification des colonnes
|
||||
for col in colonne_values:
|
||||
if not all(value == reference_value for value in col):
|
||||
all_same = False
|
||||
|
||||
# Vérification des lignes
|
||||
for line in line_values:
|
||||
if line != reference_value:
|
||||
all_same = False
|
||||
|
||||
return all_same
|
||||
|
||||
carre1=[[4, 9, 2],\
|
||||
[3, 5, 7],\
|
||||
[8, 1, 6]]
|
||||
print(check_all(carre1))
|
||||
27
magic_square/td_carre_magique.py
Normal file
27
magic_square/td_carre_magique.py
Normal file
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
carre1=[[4, 9, 2],\
|
||||
[3, 5, 7],\
|
||||
[8, 1, 6]]
|
||||
carre2=[[16, 9, 14],\
|
||||
[11, 13, 15],\
|
||||
[12, 17, 10]]
|
||||
carre3=[[1, 2, 3],\
|
||||
[4, 5, 6],\
|
||||
[7, 8, 9]]
|
||||
carre4=[[16, 3, 2, 13],\
|
||||
[5, 10, 11, 8],\
|
||||
[9, 6, 7, 12],\
|
||||
[4, 15, 14, 1]]
|
||||
carre5=[[1, 14, 14, 4],\
|
||||
[11, 7, 6, 9],\
|
||||
[8, 10, 10, 5],\
|
||||
[13, 2, 3, 15]]
|
||||
Reference in New Issue
Block a user