TD 2

publicité
DUT Info
Introduction à l’algorithmique et à la programmation
2016–2017
TD 2 - Conditions et boucles
Conditions
Exercice 1. Conditions multiples
Voici un petit programme :
1
2
3
4
5
6
7
8
9
10
if __name__ == "__main__":
a = int(input("Entrez un nombre: "))
if a <= 10 :
print(’A’)
elif a > 10 and a <= 50 :
print(’B’)
elif a > 50 and a < 100 :
print(’C’)
elif a >= 100:
print(’D’)
1. Pour quelles plages de valeurs le programme affiche-t-il A ? Même question pour B, C et
D.
2. Réduisez le nombre de tests dans ce programme tout en gardant le même comportement.
Exercice 2. Trinôme
Voici un programme :
1
2
3
4
5
6
7
8
9
10
11
if __name__ == "__main__":
a = float(input(’a = ’))
b = float(input(’b = ’))
c = float(input(’c = ’))
delta = b * b - 4 * a * c
if delta > 0:
print(’deux solutions’)
elif delta == 0:
print(’une seule solution’)
else:
print(’pas de solution’)
1. Modifiez le programme pour qu’il affiche les solutions, quand il y en a. On a besoin pour
ce faire de la fonction racine carrée, qui s’obtient en rajoutant from math import sqrt
√
avant la ligne 1 et qu’on utilise comme suit : sqrt(x) renvoie la valeur de x.
2. Modifiez le programme pour qu’il gère correctement les cas où a vaut 0, ce qui n’est pas
le cas actuellement.
Boucle for
Exercice 3. Boucle de comptage
Que fait le programme ci-dessous ?
Page 1 / 2
DUT Info
1
2
3
4
Introduction à l’algorithmique et à la programmation
2016–2017
if __name__ == "__main__":
for i in range(10):
print(i)
print(’fini’)
1. Modifiez-le pour qu’il affiche les nombres de 1 à 10.
2. Modifiez-le pour qu’il affiche les nombres de 3 à 12.
3. Modifiez-le pour qu’il affiche les nombres pairs compris entre 3 et 12.
Exercice 4. Factorielle
On rappelle que n! vaut 1 × 2 × 3 × · · · × n pour tout entier n ≥ 1 et que 0! = 1. Écrivez un
programme qui demande n et calcule n!.
Exercice 5. Trois mais pas cinq
Écrivez un programme qui prend un entier positif n en entrée, et affiche tous les nombres de 1
à n qui sont divisibles par 3 mais pas par 5.
Exercice 6. Fibonacci
La suite de Fibonacci Fn est définie par :

si n = 0,
 0
1
si n = 1,
Fn =

Fn−1 + Fn−2 sinon.
1. Calculez à la main les premières valeurs de la suite, pour n ≤ 10.
2. Écrivez un programme qui demande un entier n à l’utilisateur et affiche Fn .
Page 2 / 2
Téléchargement