Académique Documents
Professionnel Documents
Culture Documents
Corrigé
Le but de cette séance est de travailler avec les structures conditionnelles de Python.
La première partie se fait sur feuille (sans exécuter les programmes). Pour la suite, vous pouvez
utiliser un notebook ou l’éditeur Spyder.
4 4
[2]: var_x = 11
var_y = 4
var_x = var_y
var_y = var_x
print(var_x,var_y)
4 4
[3]: var_x = 11
var_y = 4
temp = var_x
var_x = var_y
var_y = temp
print(var_x,var_y)
4 11
1
[4]: var_x = 5
var_y = 6
var_x = var_x + var_y
var_y = var_x - var_y
var_x = var_x - var_y
print(var_x,var_y)
6 5
[5]: var_a = 12
if var_a > 10 :
print('oui')
print('non')
oui
non
[6]: var_a = 3
var_b = 4
if var_a > var_b:
print(var_b)
else :
print(var_a)
[7]: var_a = 9
if var_a < 5:
var_a = 20
elif var_a < 98 :
var_a = 697
elif var_a < 1000 :
var_a = 1
else :
var_a = 10
print(var_a)
697
2
[8]: var_1 = 3
while var_1 < 5 :
var_1 = var_1 + 1
print(var_1)
4
5
[9]: var_1 = 3
while var_1 < 5 :
print(var_1)
var_1 = var_1 +1
3
4
[10]: var_a = 0
var_b = 2
while var_b < 11 :
if var_b % 2 == 0 :
var_a = var_a + 1
else :
var_a = var_a + 2
var_b = var_b + 1
print(var_a)
13
3
reste = var_b%var_a
apb = var_a**var_b
print('La somme de a et b est : ' + str(somme))
print('Le produit de a et b est : ' + str(produit))
print('Le quotient de la division entière de b par a est : ' + str(quotient))
print('Le reste de la division entière de b par a est : ' + str(reste))
print('a puissance b donne : ' + str(apb))
2.2 Conversion
Ecrire un programme qui demande à l’utilisateur de donner un nombre de seconde, puis qui convertit
ce nombre en heures, minutes secondes et affiche le résultat.
[1]: valeur = int(input('Donnez la durée en secondes : '))
nb_secondes = valeur%60
nb_minutes = (valeur//60)%60
nb_heures = (valeur//60)//60
print('Cela correspond à ' + str(nb_heures)+' heures, '+ str(nb_minutes) + '␣
,→minutes, '+ str(nb_secondes)+ ' secondes.')
[ ]:
if delta > 0:
print('Les deux solutions réelles sont :')
print((-var_b-np.sqrt(delta)/(2*var_a)))
print((-var_b+np.sqrt(delta)/(2*var_a)))
elif delta == 0 :
print ('La solution double est : ')
print(-var_b/(2*var_a))
4
else :
print('Les deux solutions imaginaires sont : ')
print(str(-var_b/(2*var_a)),' - i',str(np.sqrt(-delta)/(2*var_a)))
print(str(-var_b/(2*var_a)),'+ i',str(np.sqrt(-delta)/(2*var_a)))
if carte == 'oui':
if prix >= 30:
prix_final = 0.9*prix - 5
else :
prix_final = 0.9*prix
else :
prix_final = 0.9*prix
print('Le prix final est :')
print(prix_final)
5
2.6 Somme des n premiers entiers
Ecrire un programme qui demande à l’utilisateur un nombre entier n strictement positif, puis qui
calcule la somme des entiers compris entre 0 et n (inclus).
if bool == True :
print('True')
else :
print('False')
6
Pour générer un nombre aléatoire, on importe la bibliothèque random.
L’instruction random.randint(a,b) génère un entier compris entre a et b (inclus).
[ ]: import random as rd
myst = rd.randint(1,999)
test = 0 # test est initialisé à 0 pour que la boucle se fasse au moins une fois
cpt = 1 # cpt est le compteurs de coups
while test != myst :
demande = int(input('Proposez un nombre compris entre 1 et 999 : '))
if demande == myst:
print('gagné !')
print (str(cpt), 'coups')
test = myst # avec cette instruction, la boucle ne se refera pas
elif demande > myst:
print('Le nombre mystère est plus petit')
else :
print('Le nombre mystère est plus grand')
cpt = cpt + 1 # on augmente le compteur de coups avant de recommencer la␣
,→boucle