Exercice 1 : Que font les programmes suivants ?
In [ ]:
a, b, c = 1, 1, 1
print(1)
while c<15:
a, b, c = b, a+b, c+1
print(b)
Notez la différence entre la version précédente et la version suivante... L'ordre dans lequel les affectations des valeurs aux variables sont effectuées est important !
In [ ]:
a, b, c = 1, 1, 1
print(1)
while c<15:
a = b
b = a+b
c = c+1
print(b)
In [ ]:
ch = "? eluor ac"
lc = len(ch)
i = lc - 1
sortie = ""
while i >= 0:
sortie = sortie + ch[i]
i = i - 1
print(sortie)
Ci-dessous, quelques tests pour voir comment se comportent les chaînes de caractères :
In [ ]:
toto = "? eluor ac"
print(len(toto))
print(toto[3])
In [ ]:
x = 11
n = 0
while n < 10:
print(n, x)
if x % 2 == 0:
x = x // 2
else:
x = 3 * x + 1
n = n + 1
Mini-cours sur la division entière :
In [ ]:
a = 9
print(a%2)
print(a//2)
In [ ]:
n = int(input("n? "))
c = int(input("c? "))
i = n * c
while i > 0:
i = i - 1
ligne = ""
j = n * c
while j > 0:
j = j - 1
a = i // c
b = j // c
if (a + b) % 2 == 0:
ligne = ligne + "."
else:
ligne = ligne + "#"
print(ligne)
Exercice 2 : Les pièges de Python, ou de l'importance de tester
In [ ]:
print(round(14.34, 1))
a = 2.456789
b = 2.55
c = 2.50
print(round(a, 2))
print(round(a))
print(round(b))
print(round(c))
In [ ]:
a = 5
print(a*2 * 3.14)
In [ ]:
a = False
b = True
c = True
print((a and b) or c)
print(a and (b or c))
print(a and b or c)
Exercice 3 : Tiens, une nouvelle notation ?!?
In [ ]:
tt = [1, 5, 12, 38, 43, 34, 21, 2, 15]
a = []
b = []
print ("Longueur de tt", len(tt), " et longueur de a ", len(a))
i = 0
while i < len(tt):
if tt[i] % 2 == 0:
a.append(tt[i])
else:
b.append(tt[i])
i = i + 1
print("truc :", a)
print("bidule :", b)
In [ ]:
a = []
chaine = "bonjour!"
while chaine != "":
print("Entrez un truc !")
chaine = input()
if chaine != "":
a.append(chaine)
print(a)
Exercice de synthèse : Écrire un programme qui demande à un utilisateur une série de notes et les stocke dans une liste. La saisie s'arrête quand l'utilisateur entre -1. Affichez la liste, et la moyenne des notes arrondie à 2 chiffres après la virgule.
In [ ]:
liste_notes = []
note = 0
somme = 0
while note != -1:
note = float(input())
if note != -1:
liste_notes.append(note)
print(liste_notes)
for a in liste_notes:
somme = somme + a
print(somme/len(liste_notes))
In [ ]: