Si besoin consulter la page de cours de première sur les boucles.
for i in range(5):
print(i)
for i in range(1, 5):
print(i)
for i in range(5, 1, -1):
print(i)
for i in range(5):
for j in range(i):
print(j)
for i in range(5):
j = i
while j > 0:
print(j)
j -= 1O
OO
OOO
OOOO
OOOOO
OOOOOO
OOOOOOO
OOOOOOOO
OOOOOOOOO
0000000000
111111111
22222222
3333333
444444
55555
6666
777
88
9
| |
-------
| |
-------
| |Écrire le code d'une fonction appelée is_sorted qui prend en paramètres une liste et qui renvoie
True si la liste est triée et False sinon.
assertion en pensant aux cas limites : liste vide, liste triée,
éléments égaux...On donne ci-dessous le code Python du tri par insertion :
def tri_insertion(t):
n = len(t)
for i in range(1, n):
# ICI
x = t[i]
j = i
while j > 0 and t[j-1] > x:
t[j] = t[j-1]
j = j - 1
t[j] = x
# LA
return tOn va étudier l'appel de la fonction avec comme argument [11, 25, 12, 22, 64].
n? Quelle est sa valeur?i données par l'instruction for i in range(1, n)?ICI et LA pour tous les
tours de la boucle externe(for).while).Montrer que pour tout entier , la somme des entiers de 1 à vaut :
(voir cette animation si nécessaire.)
Etablir la correction de l'algorithme. On rappelle que pour prouver la correction nous devons montrer les trois points suivants: