mirror of
https://github.com/Fare-spec/cours.git
synced 2025-12-08 03:00:37 +00:00
Add university content
This commit is contained in:
12
high-school/magic_square/TDliste2liste/exercice1.py
Normal file
12
high-school/magic_square/TDliste2liste/exercice1.py
Normal file
@@ -0,0 +1,12 @@
|
||||
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]))
|
||||
23
high-school/magic_square/TDliste2liste/exercice2.py
Normal file
23
high-school/magic_square/TDliste2liste/exercice2.py
Normal file
@@ -0,0 +1,23 @@
|
||||
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))
|
||||
11
high-school/magic_square/TDliste2liste/exercice3.py
Normal file
11
high-school/magic_square/TDliste2liste/exercice3.py
Normal file
@@ -0,0 +1,11 @@
|
||||
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))
|
||||
13
high-school/magic_square/TDliste2liste/exercice4.py
Normal file
13
high-school/magic_square/TDliste2liste/exercice4.py
Normal file
@@ -0,0 +1,13 @@
|
||||
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))
|
||||
12
high-school/magic_square/TDliste2liste/exercice5.py
Normal file
12
high-school/magic_square/TDliste2liste/exercice5.py
Normal file
@@ -0,0 +1,12 @@
|
||||
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
|
||||
11
high-school/magic_square/TDliste2liste/exercice6.py
Normal file
11
high-school/magic_square/TDliste2liste/exercice6.py
Normal file
@@ -0,0 +1,11 @@
|
||||
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))]
|
||||
54
high-school/magic_square/magic_square.py
Normal file
54
high-school/magic_square/magic_square.py
Normal file
@@ -0,0 +1,54 @@
|
||||
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))
|
||||
10
high-school/magic_square/td_carre_magique.py
Normal file
10
high-school/magic_square/td_carre_magique.py
Normal file
@@ -0,0 +1,10 @@
|
||||
#!/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