Boucles : for, while, repeat - Pierre

publicité
Pierre-Louis CAYREL
Prépa HEC 2
Lycée Lavoisier
2008-2009
disponible sur www.cayrel.net
Feuille n◦ 1
Boucles : for, while, repeat
Exercice 1 Ecrire un programme en utilisant la boucle for qui :
– lit un nombre N entier entré au clavier ;
– écrit à l’écran tous les nombres entiers impairs compris strictement entre 0 et N.
Exercice 2 Reprendre l’exercice précédent une fois avec la boucle while, une fois avec la
boucle repeat.
P
4
Exercice 3 On considère la somme k=n
k=1 k .
Écrire un programme qui :
– lit la valeur de n choisie par l’utilisateur ;
– calcule la valeur de la somme correspondante ;
– affiche cette valeur à l’écran.
On utilisera tout d’abord la boucle for, puis la boucle whileet enfin la boucle repeat.
Exercice 4 Écrire un programme qui :
– lit la valeur d’un entier n choisi par l’utilisateur ;
– calcule n! ;
– affiche le résultat à l’écran.
Exercice 5 Écrire un programme qui lit un nombre entier n > 1 et affiche à l’écran les n
premiers nombres premiers.
Pm 1
Exercice 6 Déterminer le nombre m tel que
k=1 k > n; n étant un nombre choisi par
l’utilisateur.
Exercice 7
1. Écrire trois programmes qui affichent les valeurs respectives des sommes :
n
X
2
k ,
k=1
n
X
k=1
3
k et
n
X
k4.
k=1
L’entier n étant fourni par l’utilisateur.
2. Généraliser en rédigeant un programme qui calcule la somme des
et p étant donnés par l’utilisateur.
Pn
k=1
k p , les entiers n
Exercice 8 On définit deux suites (an )n∈N et (bn )n∈N par leurs premiers termes respectifs
a0 = 1 et b0 = 2, et pour tout entier n, par les relations :
an+1 =
p
an + b n
et bn+1 = an bn .
2
Écrire un programme qui demande un entier n à l’utilisateur et qui affiche la valeur de an et
celle de bn .
1
Exercice 9 Écrire un programme qui effectue le calcul de la somme double :
1
i+j
16i6j6n
X
l’entier n étant donné par l’utilisateur.
Exercice 10 Écrire un programme qui demande une suite de valeurs positives à l’utilisateur
(par exemple une suite de notes à l’enseignant).
Pour signaler que la liste est complète, l’utilisateur tape −1. On affiche alors la moyenne des
nombres proposées (sans compter −1).
Exercice 11 On étudie la suite (un )n∈N définie par son premier terme u0 ∈ N∗ et pour tout
entier naturel n par la relation :
un
si un est pair
2
un+1 =
3un + 1 sinon
1. Proposer un programme qui affiche les valeurs successives de la suite u jusqu’au rang n.
u0 et n étant donné par l’utilisateur.
On peut remarquer que quelque soit la valeur choisie pour u0 la suite atteint le cycle
4, 2, 1 en un certain nombre fini d’étapes et le cycle 4, 2, 1 se répète ensuite indéfiniment.
2. On appelle trajectoire de u0 ou vol de u0 la suite des valeurs obtenues par la suite de
u0 jusqu’au premier 1. Écrire un programme qui affiche la trajectoire de tout nombre
proposé par l’utilisateur.
3. On appelle durée de vol de u0 le nombre d’étapes pour obtenir le premier 1 du premier
cycle 4, 2, 1. Modifier le programme précédent pour qu’il affiche aussi la durée de vol du
nombre proposé par l’utilisateur.
4. On appelle altitude de u0 la valeur maximale atteinte lors de la trajectoire de u0 . Modifier le programme précédent pour qu’il affiche aussi l’altitude du nombre donné par
l’utilisateur.
2
Téléchargement