Code : Tout sélectionner
from turtle import *
width(6)
def polygone(nb_cote, longueur, couleur):
color(couleur)
for i in range(nb_cote):
forward(longueur)
left(360//nb_cote)
Code : Tout sélectionner
from turtle import *
width(6)
def polygone(nb_cote, longueur, couleur):
color(couleur)
for i in range(nb_cote):
forward(longueur)
left(360//nb_cote)
Correction encodage binaire+hexa
Code : Tout sélectionner
def spirale(L):
"""
Trace une spirale carrée
:param L(int): longueur du 1er segment
"""
speed(15)
somme = L
while somme <= 1500:
L = L+10
forward(L, 180)
left(90)
somme = somme + L
def spirale_circ(L):
"""
Trace une spirale arrondie
:param L(int): longueur du 1er rayon
"""
speed(5)
somme = L
while somme <= 1500:
L = L+10
circle(L, 180)
#left(90)
somme = somme + L
Inspiration pour le mini projet "images"
Encore une
Un autre
Code : Tout sélectionner
def liste_impair(L):
L2 = []
for elem in L:
if elem %2 == 1:
L2.append(elem)
return L2
def somme(L1, L2):
#vérifie que les listes ont la même long
assert len(L1) == len(L2), "Listes de longueur différentes"
l = []
for i in range(len(L1)):
s = L1[i]+L2[i]
l.append(s)
return l
Code : Tout sélectionner
def ou_eg(L1, L2):
assert len(L1) == len(L2), "L1 et L2 de longeurs différentes"
L = []
for i in range(len(L1)):
if L1[i] == 1 or L2[i] == 1:
L.append(1)
else:
L.append(0)
return L
def ajoute_zeros(L, n):
L = [0]*n + L
return L
def et(L1, L2):
L = []
diff = len(L1) - len(L2)
if diff > 0:
L2 = ajoute_zeros(L2, diff)
else:
L1 = ajoute_zeros(L1, diff)
for i in range(len(L1)):
if L1[i] == 1 and L2[i] == 1:
L.append(1)
else:
L.append(0)
return L
def moyenne(liste):
somme = 0
moyenne = 0
for i in range(len(liste)):
somme = somme + liste[i]
return somme/len(liste)
Code : Tout sélectionner
LABY = [[0, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[0, 0, 0, 0, 0, 0, 0, 1, 0, 1],
[1, 0, 1, 1, 1, 1, 0, 1, 0, 1],
[1, 0, 1, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 1, 1, 1, 1, 0, 1, 1, 1],
[1, 0, 1, 0, 0, 0, 1, 0, 1, 1],
[1, 0, 1, 0, 1, 0, 1, 0, 1, 1],
[1, 0, 1, 1, 1, 0, 1, 0, 1, 1],
[1, 0, 0, 0, 0, 0, 1, 0, 0, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 0, 0]
]
LABY2 = [[0, 1, 1],
[0, 0, 1],
[1, 0, 0],
]
def est_mur(laby1, i, j):
return laby1[i][j] == 1
Correction du TP labyrinthe
Code : Tout sélectionner
def sont_adjacentes(liste_case):
long = len(liste_case)
for i in range(long-1):
if not est_voisine(liste_case[i],liste_case[i+1]):
return False
return True
def teste(liste_cases, tab):
if sont_adjacentes(liste_cases):
for case in liste_cases:
if est_mur(tab, case[0], case[1]):
return False
return True
return False
def est_bord(cases, tab):
long = len(tab)
ligne = cases[0]
col = cases[1]
if ligne == 0 or ligne == long-1 or col == 0 or col == long-1:
return True
return False
def echappe(cases, tab):
long = len(cases)
return teste(cases, tab) and cases[0] == (0, 0) and cases[long-1]== (len(tab)-1, len(tab)-1)
#print(est_voisine((0,1),(1,1)))
chemin = [(0,0), (1,0), (1, 1), (1, 2)]
chemin2 = [(0,0), (1,0), (1, 1), (1, 2), (2, 2)]
chemin3 = [(0,0), (1,0), (1, 1), (2, 1), (3, 1), (3, 2)]
chemin4 = [(0,0), (1,0), (1, 1), (2, 1), (2, 2)]
#print(sont_adacentes(chemin))
#print(teste(chemin, LABY))
print(teste(chemin, LABY))
print(echappe(chemin4, LABY2))