Exercices sur les instructions conditionnelles#
Structure if ... :, elif ... : et else:#
Exercice 20
def tictactoe(a):
if a < 1 :
return "TIC"
elif a > 8.5 :
return "TAC"
else:
return "TOE"
Que renvoie l’appel
tictactoe(0)?tictactoe(8.5)?tictactoe(10)?
Exercice 21
def mystere(a, b):
reponse = 1
if a == 0:
if b == 0:
reponse = 0
return reponse
Que renvoie l’appel mystere(0, 1) ?
Exercice 22
def mystere (n) :
if n % 3 == 0 or n % 5 == 0 :
if n % 3 == 0 :
resultat = 'A'
else :
resultat = 'B'
else :
if n % 5 == 0 :
resultat = 'C'
else :
resultat = 'D'
return resultat
Quelle est la valeur de mystere(10) ?
Exercice 23
def mystere(a, b):
if a < b:
return a * b
else:
return 2 * a
Que renvoie l’appel mystere(3, 5) ?
Exercice 24
On considère la fonction test_cascade dont le code est donné ci-dessous.
def test_cascade(num):
resultat = ""
if num > 3:
resultat = "3"
if num < 5:
resultat = "5"
if num == 7:
resultat = "7"
return resultat
Que renvoie l’appel
test_cascade(7)?Expliquer le résultat.
Exercice 25
On considère la fonction test_cascade dont le code est donné ci-dessous.
def test_cascade(num):
if num > 3:
return "3"
if num > 5:
return "5"
if num == 7:
return "7"
Que renvoie l’appel
test_cascade(7)?Expliquer le résultat.
Cette fonction renvoie-t-elle toujours quelque chose ?
Structure while ... :#
Exercice 26
n = 8.0
while n > 1.0 :
n = n / 2
Que renvoie l’exécution de ces lignes ?
Exercice 27
x = 4
while x > 0 :
y = 0
while y < x :
y = y + 1
x = x - 1
Quelles sont les valeurs finales de x et y ?
Exercice 28
1def puissance (a,m) :
2 p = 1
3 n = 0
4 while n < m :
5 p = p * a # <>
6 n = n + 1
7 return p
À la ligne 5, on pourrait mettre en commentaire que
\(p = a^n\)
\(p = a^{n - 1}\)
\(p = a^{n + 1}\)
\(p = a^m\)
Exercice 29
def seuil(n):
i=0
resultat=1
while resultat < n:
i=i+1
resultat=resultat*2
return i
Quel est le résultat de l’instruction seuil(65) ?
Exercice 30
On considère la fonction suivante :
def capital_double (capital, interet):
montant = capital
n = 0
while montant <= 2 * capital:
montant = montant + interet
n = n + 1
return n
Expliquer, sans paraphraser le code, ce que fait cette fonction.
Proposer une
docstring.Renommer la variable
n.
Exercice 31
Proposer une fonction pour renvoyer la somme des \(n\) premiers inverses des entiers naturels.
Exercice 32
Un jeu de hasard se joue de façon inconditionnelle en 6 manches. Quel type de boucle peut-on utiliser pour programmer un tel jeu ?