Structures itératives à condition d'arrêt
Exercice 1: Mettre une croix () devant la bonne réponse
1 - Quelle est la valeur de i après exécution x4
5
de la séquence: i 0
répéter
xx * 2 164
ii+1
jusqu'à x ≥100 6
2 – Combien de fois se répète le traitement: x8
4
i 0
ch ""
répéter 100
chconvch( x mod 2)+ch
xx div 2
ii+1 3
jusqu'à x = 0
3 - Quelle est la valeur de ch après x8
4
exécution de la séquence: i 1
ch 0
répéter 1000
ch (x mod 2)*i +ch
xx div 2
ii*10 3
jusqu'à x = 0
4 - Quelle est la valeur de i après exécution Ch "12*3=36" 4
de la séquence: i -1 2
répéter
ii+1 3
jusqu'à Non ("0"≤Ch[i] ≤"9")
5 - Quelle est la valeur à mettre dans la Ch "" 0
condition pour que le traitement s'exécute une répéter 25
seule fois: c chr(aléa(ord("A") , ord("Z")))
Ch Ch+ c 1
jusqu'à long (Ch) = …….
Exercice 2: implémenter et exécuter tous les traitements de l'exercice 1
Exercice 3: Soit le traitement suivant:
i -1
j n
Répéter
i i+1
j j-1
symetrique x[i]=x[j]
Jusqu'à Non symetrique OU i = n div 2 -1
1. Quelle est la valeur de symetrique après l'exécution du traitement pour x un tableau de n éléments dans les
deux cas suivants
a. 0 1 2 3 4
x "a" "5" "%" "F" "a"
b. 0 1 2 3 4
x "a" "5" "%" "5" "a"
2. Quel est le rôle du traitement: ………………………………………………………………………………………………………………………………
3. Si x est une chaine de caractères, que doit-on modifier dans le traitement pour atteindre le même objectif
4. Implémenter en python, le traitement après les modifications de la question précédente et compléter le script par
les opérations d'entrée/sortie
5. Modifier le script de sorte qu'il n'accepte que les chaines composées uniquement de lettres majuscules
Exercice 3:
Chaque année la consommation énergétique d'un centre de recherche est estimée augmenter de 8%.
Ecrire un programme qui détermine le nombre d'années nécessaires au doublement de la consommation
énergétique de ce centre
Exemple:
Si CE=15000 Kw, le programme affiche: après 10 ans le centre double sa consommation actuelle.
Exercice 4: QCM
1. On souhaite saisir un entier entre 1 et 20 (inclus)
a) A=int(input("A="))
While (A<1 and A>20):
A=int(input("A="))
b) While (A<1 and A>20):
A=int(input("A="))
c) A=int(input("A="))
While (A<1 or A>20):
A=int(input("A="))
d) A=int(input("A="))
While (A>=1 and A>=20):
A=int(input("A="))
2. A étant un entier naturel, quelle est la boucle infinie parmi les codes suivants:
a) i=A+1 c) i=A-1
While i< A: While i< A:
i=i-1 i=i-1
b) i=A+1 d) i=A-1
While i< A: While i< A:
i=i+1 i=i+1
3. Quelle est la valeur de la variable n à la fin de l'exécution du script suivant:
n=1
While n!=20:
n=n+2
a) 1
b) 20
c) 22
d) Boucle infinie
Exercice 5:
On vous demande d'écrire un programme qui permet de calculer le factoriel d'un entier naturel n (1×2×3×4…×n). Quatre versions différentes sont proposées
par les élèves.
1. Quelle est la meilleure solution? Justifier votre réponse
n=int(input("n=")) n=int(input("n=")) n=int(input("n=")) n=int(input("n="))
i=0 i=1 F= 1 i=0
F=1 F=1 For i in range(1, n+1): F=1
While i<n: While i<=n: F =F*i While i<n:
i=i+1 F=F*i Print(F) F=F*(i+1)
F=F*i i=i+1 i=i+1
Print(F) Print(F) Print(F)
Version1 Version2 Version3 Version4
2. Rectifier la version choisie de sorte qu'elle tient compte du contrôle de saisie de n