Vous êtes sur la page 1sur 28

//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

La structure itérative complète :

La structure de contrôle itérative complète exprime la répétition d’un traitement en nombre de


fois connu d’avance.

en algorithme en Python
Pour c de vi à vf faire
for c in range (vi,vf+1) :
Traitement
Traitement
Fin pour

Pour c de vi à vf (pas=valeur_pas) faire


for c in range (vi,vf+1,valeur_pas) :
Traitement
Traitement
Fin pour

Remarque : La valeur de pas peut être positive ou négative. Par défaut, elle est égale à 1.
Application1 :
Qu’affiche le programme suivant :

1 x0 90
a0
pour i de 5 à 9 faire : pour i de 0 à 9 faire :
4 99
aa+1 pour j de -1 à -9(pas=-1) faire :
Fin pour 5 xx+1
100
écrire(a) Fin pour
6 Fin pour 109

Application2:
r ̎̎̎ ̎
Soit la séquence algorithmique ci-dessus : pour i de p1 à p2-1 faire :
rr+ch[i]
Fin pour

23
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

1) Donner les valeurs de c pour chacun de cas suivants :

ch P1 P2 r

‘JeTuRéussis’ 2 4 ………

‘fourmis’ 2 5 ………
.
2) En déduire le rôle de cette séquence :
…………………………………………………………………………………………….
3) Quelle est la fonction prédéfinie qui fait la même chose :
…………………………………………………………………………………………….
Application3 :
Soit l’algorithme Algorithùme exercice
Algorithme exercice suivant :
Debut
Lire(n)
r0
xn*(n-1)+1
pour i de 1 à n faire :
rr+x
xx+2
Fin pour
Ecrire(r)
Fin

1) Compléter le tableau de déclaration des objets de l’algorithme ci-dessus :

Tableau de déclaration des objets (TDO)


Objet Type/nature
…………… ……………
…………… ……………
2) Donner la valeur de r pour chacune des cas suivants :
n r
3 ……
5 ……

3) En déduire le rôle de cet algorithme :


…………………………………………………………………………………………….

24
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

La structure de contrôle itérative à condition d’arrêt Répéter..Jusqu’à :

Est utilisé quand il d’agit de répéter un traitement un nombre de fois inconnu à l’avance.
et qu’on est sûr que le traitement itératif s’exécutera au moins une fois.

en algorithme en Python
Répéter
while (condition):
Traitement
Traitement
Jusqu’à condition d’arrêt

Application1 :
Que contient la variable i sachant que : Que contient la variable seq sachant que :

i34 0 ‘02468’
Répéter seq’’
1
ii-1 i0 ‘2468’
jusqu’à (i ≤ 6) 6 Répéter
13 ii+2 ‘86420’
seqconvch(i)+seq
jusqu’à (i >7) ‘8640’
Application2 :
Soit l’algorithme Algorithùme exercice
Algorithme exercice suivant :
Debut
Lire(n)
c0
k2*n-1
Répéter
cc+k
kk-2
jusqu’à (k<1)
Ecrire(c)
Fin

1) Compléter le tableau de déclaration des objets de l’algorithme ci-dessus :

Tableau de déclaration des objets (TDO)


Objet Type/nature
25
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

…………… ……………
…………… ……………

2) Donner les valeurs de c pour chacune des cas suivants :


n c
3 ……
5 ……
7 …....

3) En déduire le rôle de cet algorithme :


…………………………………………………………………………………………….
…………………………………………………………………………………………….
Application 3 :
Soit la séquence algorithmique suivante :

Algorithùme exercice
i1
fvrai
Répéter
Si( t[i-1]>t[i]) alors
ffaux
Sinon
ii+1
FinSi
jusqu’à (non(f)) ou (i=n)
Si f alors
Ecrire (‘Les valeurs sont correctes’)
Sinon
Ecrire (‘Les valeurs ne sont pas correctes’)
FinSi

1) Proposer une valeur à mettre dans la 4éme case du T pour que le programme affiche le
message ‘ Les valeurs sont correctes’ :

t 12 15,5 20 ………. 23.5 29


.
0 1 2 4 5

2) En déduire le rôle de cette séquence :


……………………………………………………………………………………………
…………………………………………………………………………………………….

26
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

La structure de contrôle itérative à condition d’arrêt Tant que..Faire :

Est utilisé quand il d’agit de répéter un traitement un nombre de fois inconnu à l’avance.
et que le traitement itératif peut ne pas s’exécuter.

en algorithme en Python
Tant que (condition)faire
while (condition):
Traitement
Traitement
Fin Tant que

Application1 :
Que contient la variable n sachant que :

1
n1 20
Tant que (n≠20) faire
nn+2 22
Fin Tant que Le programme ne termine pas, la
boucle tourne indéfiniment.

Que contient la variable a sachant que : Qu’affiche le programme suivant :

a5 1 s=0
Tant que (a≤14) faire 14 i=2 5
aa+4 15 while (i ≤ 4) : 7
Fin Tant que s=s+i 9
17 i=i+1
print(s) 14
Application 2 :
Soit la séquence algorithmique suivante :
Algorithùme exercice
i0
Tant que (i<10) faire
Ecrire(i)
ii+1
Fin Tant que
Ecrire(‘fini’)
27
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

1) Qu’affiche le programme suivant :


…………………………………………………………………………………………….
…………………………………………………………………………………………….

2) Effectuer les modifications nécessaires pour qu’elle affiche :


Les nombres pairs
Les nombres de 1 à10 Les nombres de 3 à12
compris entre 3 et 12
…………………………….. ……………………………. ………………………….
…………………………….. . ………………………….
…………………………….. ……………………………. ………………………….
…………………………….. . ………………………….
…………………………….. ……………………………. ………………………….
…………………………….. . …………………….........
…………………………….. ……………………………. .
……………………………. . ………………………….
……………………………. ……………………………. ………………………….
…………………………... . ………………………….
……………………………. …………………….........
. .
…………………………….
.
…………………………….
…………………………….
…………………………….
Application 3 :
Soit l’algorithme suivant :
Algorithùmeexercice
Algorithme exercice
Début
Lire(n)
Lire(x)
r1
Tant que (n>0)faire
Si(n mod 2 ≠ 0) alors
rr*x
FinSi
nn div 2
xx*x
Fin Tant que
Ecrire(r)
Fin

1) Compléter le tableau de déclaration des objets de l’algorithme ci-dessus :


28
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

Tableau de déclaration des objets (TDO)


Objet Type/nature
…………… ……………
…………… ……………
2) Donner les valeurs de r pour x=4 et n=3 :
3) En déduire le rôle de cet algorithme :
…………………………………………………………………………………………….

Application 4 :
Soit la séquence algorithmique ci-dessous ou x est un entier naturel :
Algorithùme
nb1 exercice
Tant que (x div 10 ≠0) faire
nbnb+1
xx div 10
Fin Tant que
Ecrire(r)
Fin

1) Compléter le tableau ci-dessous par la valeur finale de nb suite à l’exécution de cette


séquence pour chacune des valeurs x :
x nb
5403 ………..
176 ………..
…..........
3
.
2) Donner le rôle de cette séquence :
…………………………………………………………………………………………….
3) Ecrire une séquence algorithmique équivalente à celle donnée précédemment sans
utiliser une structure itérative :
…………………………………………………………………………………………….
…………………………………………………………………………………………….
Application 5 :
Soit les séquences algorithmiques suivantes relatives à des traitements bien déterminés :

29
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

Séquence 1 Séquence 2
i-1
r’’ s0
pour i de 0 à long(ch)-1 faire tant que (i<2*n-1) :
rch[i]+r ii+1
Fin Pour ss+i
Fin tantque
Séquence 3 Séquence 4
chconvch(n)
s0 mch[0]
Répéter pour i de 1 à long(ch)-1 faire
ss+n mod10 Si (ch[i]<m) alors
nn div 10 mch[i]
Jusqu’à (n=0) FinSi
Fin Pour

Valider chacune de ces propositions suivantes en mettant dans la case correspondante la lettre
V si elle est correcte ou la lettre F si elle est fausse.
1-Pour calculer la somme des chiffres d’un entier, on utilise la séquence :
S1 S2 S3 S4
2-Pour inverser une chaine de caractère, on utilise la séquence :
S1 S2 S3 S4
3-Pour trouver le plus petit chiffre dans en entier, on utilise la séquence :
S1 S2 S3 S4
4- Pour trouver le carré d’un entier naturel, on utilise la séquence :
Algorithùmeexercice
Algorithme exercice
S1 Début S2 S3 S4
Application 6 : Lire(ch1)
Soit l’algorithme Lire(ch2) suivant :
Répeter
lire(p)
jusqu’à (p≤long(ch1))
ch1̎̎
Pour i de 0 à p-1 faire
B1
chch+ch1[i]
FinPour
chch+ch2
Pour i de p à long(ch1)-1 faire
B2
chch+ch1[i]
FinPour
ch1ch 30
Ecrire (ch1)
Fin
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

1) Compléter le tableau de déclaration des objets de l’algorithme ci-dessus :


Tableau de déclaration des objets (TDO)
Objet Type/nature
…………… ……………
…………… ……………
1) Proposer pour chacun des blocs d’instructions n°1 et n°2, une expression équivalente
utilisant un ou plusieurs fonction(s) prédéfinies(s)
…………………………………………………………………………………………….

Série d’exercices : Les structures de contrôle itératives


Exercice n°1 : plein de zéros
Ecrire l’algorithme d’un programme qui permet de saisir un nombre de 2 chiffres et d’insérer
autant de zéros que la différence entre ses chiffres de dizaines et d’unités.
Exemple :
n=51 le programme affichera : n=500001
n=14 le programme affichera : n=10004
n=33 le programme affichera : n=33

Exercice n°2 : puissance


Ecrire l’algorithme d’un programme qui permet de saisir deux entiers (a et b) puis de calculer
et d’afficher la puissance de n ième du nombre a :ab .
Exemple :
a=2 , b=7 le programme affichera : 2 à la puissance 7 =128
a=5 ,b=-3 le programme affichera : 5 à la puissance -3=0.008
a=0 ,b=-4 le programme affichera : 0 à la puissance -4 est égale à l’infinie.

Exercice n°3: compte


Ecrire l’algorithme d’un programme qui permet de saisir une suite d’entiers qui se termine par
-1 puis de calculer et d’afficher la somme de ses valeurs.
Exemple :
12 3 44 5 7 -1 le programme affichera : La somme de cette suite est 71.
1 3 -1 le programme affichera : La somme de cette suite est 4.
31
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

 -1 le programme affichera : La somme de cette suite est 0.

Exercice n°4: Nombre bipériodique


Un nombre bipériodique est un entier naturel dont les chiffres partagés en deux parties égales
sont identiques sans qu’on change l’ordre des chiffres.
Exemple : 77 |5454|385385|34563456…sont des nombres bipériodiques.
Remarque : Aucun nombre formé d’un nombre impair de chiffres ne peut être bipériodiques.
Ecrire l’algorithme d’un programme qui permet de chercher et d’afficher tous les nombres
bipériodiques de l’intervalle [10,1000]

Exercice n°5: Nombre parfait


Un nombre est dit parfait s’il est égal à la somme de ses diviseurs sauf lui-même.
Ecrire l’algorithme d’un programme qui permet de saisir un entier n (1<n<100) et d’afficher s’il
est parfait ou non.
Exemple :
n=6 le programme affichera : 1+2+3 = 6 est un nombre parfait.
n=28 le programme affichera : 1+2+ 4+ 7 +14 =28 est un nombre parfait.
n= 10 le programme affichera : 1+2+5= 10 est un nombre parfait.

Exercice n°6: Chaine dupliquée


Ecrire l’algorithme d’un programme qui permet de dupliquer chaque caractère de la chaine
non vide autant de fois que sa position dans la chaine.
Exemple :
Donner la chaine à dupliquer : Python
le programme affichera : La chaine dupliquée est :Pyyttthhhhooooonnnnnn

Exercice n°7: Somme chiffres


Ecrire l’algorithme d’un programme qui permet saisir une chaine de caractères non vide et
d’afficher la somme des chiffres qui figurent dans cette chaine.
Exemple :
Donner la chaine à tester : 16Py45th2o5n
Le programme affichera : La somme des chiffres qui figurent dans la chaine 16Py45th2o5n
est:23

Exercice n°8: Plus long

32
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

Ecrire l’algorithme d’un programme qui permet de déterminer et d’afficher le mot le plus long
dans une phrase donnée.
Exemple :
Donner la chaine à tester : python au lycée
Le programme affichera : Le mot le plus long : python.

Exercice n°9: Pangramme


Une chaine est dite pangramme, si elle contient toutes les lettres d’alphabet sans distinction
entre minuscule et majuscule.
Exemple :
Donner la chaine à tester : Dans un wagan bleu,tout en mangeant cinq kiwis frais,vous jouez
du xylophone.
Le programme affichera : Dans un wagan bleu,tout en mangeant cinq kiwis frais,vous jouez du
xylophone est une pangramme.

Ecrire l’algorithme d’un programme qui permet de saisir une chaine de caractères non vide et
de vérifier si elle est pangramme ou non.

Exercice n°10: joli mot


Une chaine est dite joli-mot, si le de voyelles égal à nombre de consonnes.
Exemple :
Donner la chaine à tester : abir
Le programme affichera : abir est un joli-mot
Ecrire l’algorithme d’un programme qui permet de saisir une chaine de caractères non vide et
de vérifier si elle est joli-mot ou non.

Exercice n°11: palindrome


Un mot est dit palindrome, s’il se lit dans les deux sens sans tenir en compte la différence
entre les majuscules et les minuscules.
Exemple :
Donner la chaine à tester : elle
Le programme affichera : elle est palindrome
Ecrire l’algorithme d’un programme qui permet de saisir une chaine de caractères non vide et
d’afficher si elle est palindrome ou non.

Exercice n°12: Rechercher et remplacer


Ecrire l’algorithme d’un programme qui permet de supprimer les occurrences d’un mot dans
une chaine de caractère donnée non vide.
Exemple :
Donner la chaine à tester : aaPyaathonaa
Donner le mot à supprimer : aa
Le programme affichera : Python

33
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

Exercice n°13: Codage


Ecrire l’algorithme d’un programme qui permet de coder un message non vide selon le
procédé suivant : permuter chaque caractère d’indice impair avec le caractère qui le précède.
Exemple :
Donner la chaine à tester : Python au lycée
Le programme affichera : Le code du « python au lycée » est « yphtnoa uyléce »
Exercice n°14: Conversion
Ecrire l’algorithme d’un programme qui permet de saisir une chaine de caractères ch non vide
puis de convertir la chaine initiale de la façon suivante :
Si le caractère est une voyelle alors il sera remplacé par son prédécesseur.
Si le caractère est un chiffre alors il sera remplacé par le caractère ‘*’.
Sinon le caractère sera remplacé par son code ASCII correspondant.
Afficher, à la fin, la chaine finale chf obtenue.
Exemple :
Donner la chaine à tester : python2023
Le programme affichera : python2023 devient 112x116104n110****
Exercice n°15: Chiffre de chance
Pour chercher le chiffre de chance d’une personne, on procède comme suit : on additionne les
chiffres composants la date de naissance.
Au nombre obtenu, on refait le même procédé jusqu’à qu’on obtienne un nombre composé
d’un seul chiffre qui est le chiffre de chance.
Exemple :
Soit la date de naissance suivante :’’29/09/1999 ‘’
On additionne les chiffres de la date de naissance :2+9+0+9+1+9+9+9= 48
48 est composé de deux chiffres, on refait le même traitement :4+8=12
12 est composé de deux chiffres, on refait le même traitement :1+2=3
3 est composé d’un seul chiffre et c’est le chiffre de chance recherché.
Ecrire l’algorithme d’un programme qui permet de saisir la date de naissance d’une personne
sous la forme jj/mm/aaaa puis d’appliquer la méthode citée ci-dessus et d’afficher le chiffre
de chance trouvé.
Exercice n°16: Suite de steinhaus
On prend un nombre de deux chiffres au hasard.
On multiple les deux premiers chiffres.
On place le résultat à la suite des chiffres déjà trouvés.
Exemple : 23
2*3= 6236
3*6=1823618
6*1=6236186
1*8=82361868
8*6=48236186848
34
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

……………
Ecrire l’algorithme d’un programme qui permet de chercher et d’afficher les 100 premiers
chiffres de cette suite.

Série d’exercices : Les structures de contrôle itératives(Les tableaux)


Exercice n°1 : inverser un tableau
Ecrire l’algorithme d’un programme qui permet d’inverser les éléments d’un tableau t de n
entiers (2≤n≤100).
Exemple :
Donner la taille de tableau t (≥2 et ≤100) :7
11 2 33 5 6 7 1
t
0 1 2 3 4 5 6
Le programme affichera :
Tableau inversé
1 7 6 5 33 2 11
t
0 1 2 3 4 5 6

Exercice n°2 : Equilibré


On dit un tableau t est équilibré si et seulement si :
Le nombre des éléments pairs=Le nombre des éléments impairs
Ecrire l’algorithme d’un programme qui permet de :
Remplir un tableau t par n (pair et 2≤n≤100) entiers strictement positifs.
Afficher si ce tableau est équilibré ou non.
Exemple :
Donner la taille de tableau t (≥2 et ≤100 et pair) :6
10 2 3 5 11 8
t
35
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

0 1 2 3 4 5
Le programme affichera : T est équilibré.

Exercice n°3: permutation 2-2


Ecrire l’algorithme d’un programme qui permet de remplir un tableau t de n entiers (2≤n≤100
et multiple de 2) et de permuter les éléments successifs deux par deux.
Exemple :
Donner la taille de tableau t (≥2 et ≤100 et multiple de 2) :8
t 1 2 3 4 5 6 7 8
0 1 2 3 4 5 6 7
Le programme affichera :
Le tableau résultat :
t 2 1 4 3 6 5 8 7
0 1 2 3 4 5 6 7

Exercice n4°: Transfert


Soient t1 et t2 deux tableaux d’entiers de taille n (2≤n≤100).
Ecrire l’algorithme d’un programme qui permet de transférer les éléments de t1 et t2 selon le
principe suivant :
Les éléments de rang pair de t1 seront rangés dans t2 (de gauche à droite) et les éléments de
rang impair de t1 seront rangés dans t2 en ordre inverse (de droite à gauche)
Exemple :
Donner la taille de tableau t (≥2 et ≤100) :9
12 13 41 5 19 13 4 8 15
t1
0 1 2 3 4 5 6 7 8
Le programme affichera :
Le tableau résultat :
36
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

12 41 19 4 15 8 13 5 13
t2
0 1 2 3 4 5 6 7 8

Exercice n5°: Espaces


Ecrire l’algorithme d’un programme qui permet de remplir un tableau t par n chaines de
caractères non vide (2≤n≤100) et d’afficher les éléments de t qui ne contient pas d’espaces.
Exemple :
Donner la taille de tableau t (≥2 et ≤100) :5
t ‘Jamel Ben Mohamed’ ‘Ali’ ‘Salah ben Salem’ ‘Mohamed’ ‘Ahmed’
0 1 2 3 4
Le programme affichera : Ali, Mohamed,Ahmed

Exercice n5°: La plus longue


Ecrire l’algorithme d’un programme qui permet de remplir un tableau t par n chaines de
caractères non vide (2≤n≤100) de chercher et d’afficher la longueur de la chaine la plus longue
puis toutes les chaines ayant la même longueur.
Exemple :
Donner la taille de tableau t (≥2 et ≤100) :7
t ‘Ali’ ‘ ??’ ‘MED’ ‘55*’ ‘987’ ‘mm’ ‘il’
0 1 2 3 4 5 6

Le programme affichera :
La longueur de la chaine la plus longue est : 3
La chaine ayant cette longueur sont : Ali Med 55* 987

37
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

Série d’exercices : Les structures de contrôle itératives(Les matrices)


Exercice n°1 : Min_Max
Ecrire l’algorithme d’un programme qui permet de chercher le minimum et le maximum dans
une matrice de réels d’ordre n (n compris entre 2 et 10)
Exemple :
Pour n=3 et la matrice carrée m ci-dessous :
0 1 2
m 0 4. 7.1 9
2
1 1. 6 3.9
1
2 11 22.2 8.7
Le programme affichera :
Le minimum est : 1.1
Le maximum est : 22.2
Exercice n°2 : Somme_ligne_colonne
Ecrire l’algorithme d’un programme qui permet de calculer la somme des entiers se trouvant
dans la première ligne et la colonne de milieu d’une matrice de dimension L*C (L et C compris
entre 2 et 10)
Exemple :
Saisir le nombre de lignes : 4
Saisir le nombre de colonnes : 5
0 1 2 3 4
m 0 12 40 3 0 5
1 16 15 2 6 25
2 26 90 15 9 88
38
3 6 2 1 10 20
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

Le programme affichera : La somme est égale à 78.

Exercice n°3 : Composition


Ecrire l’algorithme d’un programme qui permet de :
Saisir le nombre de lignes de colonnes n (n compris entre 2 et 10)
Remplir une matrice carrée au hasard par des lettres majuscules.
Afficher les chaines composées par les lettres de chaque ligne et de chaque colonne.
Afficher la chaine composée par les lettres de la diagonale et de l’anti-diagonale.
Exemple :
Pour n=4, et la matrice carrée m ci-dessous :
0 1 2 3
m 0 A L I G
1 R Y U M
2 O F P E
3 S N R Q

Le programme affichera :
Les chaines des lignes :’ALIG’,’RYUM’,’QFPE’,’SNRQ’
Les chaines des colonnes :’AROS’,’LYFN’,’IUPR’,’GMEQ’.
La chaine de la diagonale :’AYPQ’
La chaine de l’anti-diagonale :’GUFS’
Exercice n°4 : Matrice d’identité
La matrice d’identité d’ordre n est une matrice carrée dont les valeurs des cases de la
première diagonale sont égales à 1 alors que celle se trouvant dans les autres cases sont
nulles.
Ecrire l’algorithme d’un programme qui permet de vérifier si une matrice d’entiers d’ordre n
(n compris entre 2 et 10) est une matrice d’identité.
Exemple :
Pour n=5, et la matrice carrée m ci-dessous :

39
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

0 1 2 3 4
m 0 1 0 0 0 0
1 0 1 0 0 0
2 0 0 1 0 0
3 0 0 0 1 0
4 0 0 0 0 1

Le programme affichera : m est une matrice d’identité de taille 5.

Exercice n°5: Concaténation


On désire former, à partir d’une matrice n de L*C d’entiers formés par un seul chiffre, un
tableau t de L éléments, dont chaque élément de t est l’entier formé par la concaténation des
éléments de chaque ligne de la matrice m.
Exemple :
Pour la matrice m de 3 lignes et 4 colonnes :
0 1 2 3
m 0 7 4 3 0
1 1 5 2 6
2 6 9 1 9

On aura le tableau t suivant :


t 743 1526 6919
00 1 2
Ecrire l’algorithme d’un programme qui permet de :
Saisir le nombre de lignes L (L compris entre 2 et 10)
Saisir le nombre de lignes C (C compris entre 2 et 10)
Remplir la matrice par des entiers formés par un seul chiffre.
Former le tableau t comme définie ci-dessus.
Exercice n°6: Transposée d’une matrice
On appelle transposée d’une matrice A de type (n,p)et de terme général aij ,la matrice notée
tA. obtenue en échangeant les lignes et les colonnes de même indice de i de A.
t
A=( aij) A = t( aij)=aji

Ecrire l’algorithme d’un programme qui permet de :


Saisir le nombre de lignes L (L compris entre 2 et 10)

40
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

Saisir le nombre de lignes C (C compris entre 2 et 10)


Remplir la matrice par des entiers.
Faire la transportation de la matrice carrée.tm
Exemple :
Saisir le nombre de lignes :2
Saisir le nombre de colonnes :4
0 1 2 3 0 1
m 0 1 2 3 4 tm
On 0 1 5
1 5 6 7 8 obtient 1 2 6
2 3 7
3 4 8

Exercice n°7: Table de Pythagore


Ecrire l’algorithme qui permet de créer une table de Pythagore, c’est à dire une table ou
l’intersection entre ligne et colonne représente le multiplication des deux
Exemple :
Donner le nombre de lignes (colonnes) :4
Le programme affichera :
0 1 2 3
m 0 1 2 3 4
1 2 4 6 8
2 3 6 9 12
3 4 8 12 16

41
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

Série d’exercices : Les structures de contrôle itératives (Conception des


jeux)
Exercice n°1: Ludo King
Soit le jeu Ludo King modifié suivant :
Deux joueurs (bleu et vert) lancent aléatoirement
et successivement (l’un après l’autre) un dé de six faces.
La valeur obtenu du lancé du dé est ajouté à la somme de
chaque joueur (score).
Après le lancé du bleu si la somme du bleu (score de bleu) correspond (égale) à celle de vert
alors le bleu écrase le vert et le vert recommence à zéro.
Après le lancé du vert si la somme du vert (score de vert) correspond (égale) à celle de bleu
alors le vert écrase le bleu et le bleu recommence à zéro.
Le jeu prend fin si la somme (le score) de l’un des joueurs devient 50 ou plus.
A la fin le programme affiche les scores, le gagnant et le perdant.

Ecrire un programme qui permet de stimuler le jeu décrite précédemment.

Exercice n°2: Jeu de nim


Les règles du jeu de nim sont simples :
Répartir seize allumettes en ligne.
Chaque joueur, à tour de rôle va prendre un, deux ou trois allumettes.
Celui qui prend la dernière allumette a gagné.
Exemple de partie :
Il reste 16 battons. Il reste 8 battons.
42
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

----Tour de joueur 1----


Nombre de bâtons de 1 à 3 :3 ----Tour de joueur 1----
Il reste 13 battons. Nombre de bâtons de 1 à 3 :2
----Tour de joueur 2---- Il reste 6 battons.
Nombre de bâtons de 1 à 3 :2 ----Tour de joueur 2----
Il reste 11 battons. Nombre de bâtons de 1 à 3 :3
----Tour de joueur 1---- Il reste 3 battons.
Nombre de bâtons de 1 à 3 :1 ----Tour de joueur 1----
Il reste 10 battons. Nombre de bâtons de 1 à 3 :3
----Tour de joueur 2---- Joueur 1 gagne la partie.
Nombre de bâtons de 1 à 3 :2

Exercice n°3: Jeu de trèfles


Le jeu de trèfle est un jeu de cartes qui se joue à deux en utilisant deux cartes trèfles
numérotés de 1 à 10.
Au début les cartes sont bien mélangées puis posées sur la table face cachée. Le jeu se fait,
ensuite, en cinq tours, où à chaque fois :
Le premier joueur tire une carte
Le deuxième joueur tire une autre carte des cartes restantes.
Le gagnant du tour est celui possédant la valeur minimale.
Ce dernier marque un point.
Les cartes tirées ne sont pas remises.
A la fin de la partie, toutes les cartes sont tirées, celui qui possède le score maximal est déclaré
gagnant.
Exemple de partie :

********Tour1********
La carte du joueur 1 est : 3
La carte du joueur 2 est : 7 ********Tour4********
Le score du joueur 1 est : 1 La carte du joueur 1 est : 5
Le score du joueur 2 est : 0 La carte du joueur 2 est : 10
Le score du joueur 1 est : 2
********Tour2******** Le score du joueur 2 est : 2
La carte du joueur 1 est : 6
La carte du joueur 2 est : 2 ********Tour5********
Le score du joueur 1 est : 1 La carte du joueur 1 est : 1
Le score du joueur 2 est : 1 La carte du joueur 2 est : 9
Le score du joueur 1 est : 3
********Tour3******** Le score du joueur 2 est : 2
La carte du joueur 1 est : 8
La carte du joueur 2 est : 4
Le score du joueur 1 est : 1 Le joueur 1 gagne !!! 43
Le score du joueur 2 est : 2
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

Ecrire l’algorithme d’un programme qui stimule ce jeu.

Exercice n°4: Jeu deviner mon nombre


L’ordinateur tire un nombre au hasard entre 1 et 30 et vous avez cinq essais pour le trouver.
Après chaque tentative, l’ordinateur vous dira si le nombre que vous avez proposé est trop
grand, trop petit ou si vous avez trouvé le bon nombre.
Exemple :
Saisir votre réponse : 30
Trop grand !!
Saisir votre réponse : 10
Trop petit !!
Saisir votre réponse : 20
Trop petit !!
Saisir votre réponse : 22
Trop petit !!
Saisir votre réponse : 28
Trop grand !!
Pas de chance cette fois !!
L’ordinateur a choisi 26.
Exercice n°5: Jeu chez la fourmi
Ecrire l’algorithme d’un programme qui permet de simuler un jeu entre l’utilisateur et
l’ordinateur réagie par le principe suivant :
L’utilisateur choisit entre Pair et Impair
A tour de rôle, l’ordinateur et l’utilisateur proposent chacun un chiffre compris entre 1 et 5.
Si la somme de 2 chiffres proposés a la même parité que celle choisie par l’utilisateur, ce
dernier marque un point, sinon c’est l’ordinateur qui marque un point.
A la fin de deux reprises, si le score de l’utilisateur est supérieur à celui de l’ordinateur alors
l’utilisateur sera déclaré gagnant, sinon il est perdant.
Exemple de partie :
44
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

******Partie num1******
Saisir votre choix (Pair :P ,Impair :I) :P
Saisir un chiffre compris entre 1 à 5 : 1
L’ordinateur a choisi : 1
La somme est : 2
Vous avez gagné !!
Votre score est 1 et le score l’ordinateur est 0
******Partie num2******
Saisir votre choix (Pair :P ,Impair :I) :I
Saisir un chiffre compris entre 1 à 5 :2
L’ordinateur a choisi : 2
La somme est : 4
Vous avez perdu !!
Votre score est 1 et le score l’ordinateur est 1
******Partie num3******
Saisir votre choix (Pair :P ,Impair :I) :P
Saisir un chiffre compris entre 1 à 5 : 3
L’ordinateur a choisi : 1
La somme est : 4
Vous avez gagné !!
Votre score est 2 et le score l’ordinateur est 1
******Partie num4******
Saisir votre choix (Pair :P ,Impair :I) :I
Saisir un chiffre compris entre 1 à 5 : 4
L’ordinateur a choisi : 2
La somme est : 6
Vous avez perdu !!
Votre score est 2 et le score l’ordinateur est 2
******Partie num5******
Saisir votre choix (Pair :P ,Impair :I) :P
Saisir un chiffre compris entre 1 à 5 : 5
L’ordinateur a choisi : 2
La somme est : 7
Vous avez perdu !!
Votre score est 2 et le score l’ordinateur est 3
******Partie num6******
Saisir votre choix (Pair :P ,Impair :I) :I
Saisir un chiffre compris entre 1 à 5 : 1
L’ordinateur a choisi : 3
La somme est : 4
Vous avez perdu !!
Votre score est 2 et le score l’ordinateur est 4
******Partie num7******
45
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

Saisir votre choix (Pair :P ,Impair :I) :P


Saisir un chiffre compris entre 1 à 5 : 2
L’ordinateur a choisi : 3
La somme est : 5
Vous avez perdu !!
Votre score est 2 et le score l’ordinateur est 5
******Partie num8******
Saisir votre choix (Pair :P ,Impair :I) :I
Saisir un chiffre compris entre 1 à 5 : 3
L’ordinateur a choisi : 1
La somme est : 4
Vous avez perdu !!
Votre score est 2 et le score l’ordinateur est 6

******Partie num9******
Saisir votre choix (Pair :P ,Impair :I) :P
Saisir un chiffre compris entre 1 à 5 : 4
L’ordinateur a choisi : 1
La somme est : 5
Vous avez perdu !!
Votre score est 2 et le score l’ordinateur est 7
******Partie num10******
Saisir votre choix (Pair :P ,Impair :I) :I
Saisir un chiffre compris entre 1 à 5 : 5
L’ordinateur a choisi : 4
La somme est : 9
Vous avez gagné !!
Votre score est 3 et le score l’ordinateur est 7

Dommage !! Vous avez perdu

Exercice n°6: Jeu de différence


Ecrire l’algorithme d’un programme qui stimule le jeu suivant :
 A tour de rôle, l’ordinateur et le joueur choisissent une note qui ne peut prendre que 3
valeurs : 0,1 et 2 :
Si la différence entre les nombres choisis vaut :
 2, le joueur qui a proposé le grand nombre gagne un point.
 1, le joueur qui a proposé le plus petit nombre gagne un point.
 0 aucun point n’est marqué.
Le jeu termine quand l’un des joueurs réalise 10 point.
Exemple :
******Partie num1******
Saisir un chiffre compris entre 0 à 2 : 0
46
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

L’ordinateur a choisi : 1
Vous avez gagné !!
Votre score est 1 et le score l’ordinateur est 0
******Partie num2******
Saisir un chiffre compris entre 0 à 2 : 1
L’ordinateur a choisi : 2
Vous avez gagné !!
Votre score est 2 et le score l’ordinateur est 0
******Partie num3******
Saisir un chiffre compris entre 0 à 2 : 2
L’ordinateur a choisi : 0
Vous avez gagné !!
Votre score est 3 et le score l’ordinateur est 0

******Partie num4******
Saisir un chiffre compris entre 0 à 2 : 0
L’ordinateur a choisi : 2
Vous avez perdu!!
Votre score est 3 et le score l’ordinateur est 1
******Partie num5******
Saisir un chiffre compris entre 0 à 2 : 1
L’ordinateur a choisi : 1
Votre score est 3 et le score l’ordinateur est 1
******Partie num6******
Saisir un chiffre compris entre 0 à 2 : 2
L’ordinateur a choisi : 2
Votre score est 3 et le score l’ordinateur est 1
******Partie num7******
Saisir un chiffre compris entre 0 à 2 : 2
L’ordinateur a choisi : 2
Votre score est 3 et le score l’ordinateur est 1
******Partie num8******
Saisir un chiffre compris entre 0 à 2 : 1
L’ordinateur a choisi : 0
Vous avez perdu !!
Votre score est 3 et le score l’ordinateur est 2
******Partie num9******
Saisir un chiffre compris entre 0 à 2 : 0
L’ordinateur a choisi : 2
Vous avez perdu !!
Votre score est 3 et le score l’ordinateur est 3
******Partie num10******
Saisir un chiffre compris entre 0 à 2 : 1
47
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

L’ordinateur a choisi : 2
Vous avez gagné!!
Votre score est 4 et le score l’ordinateur est 3
******Partie num11******
Saisir un chiffre compris entre 0 à 2 : 0
L’ordinateur a choisi : 2
Vous avez perdu!!
Votre score est 4 et le score l’ordinateur est 4
******Partie num12******
Saisir un chiffre compris entre 0 à 2 : 1
L’ordinateur a choisi :0
Vous avez perdu!!
Votre score est 4 et le score l’ordinateur est 5

******Partie num13******
Saisir un chiffre compris entre 0 à 2 : 2
L’ordinateur a choisi :2
Votre score est 4 et le score l’ordinateur est 5
******Partie num14******
Saisir un chiffre compris entre 0 à 2 : 0
L’ordinateur a choisi :2
Vous avez perdu !!
Votre score est 4 et le score l’ordinateur est 6
******Partie num15******
Saisir un chiffre compris entre 0 à 2 : 0
L’ordinateur a choisi :0
Votre score est 4 et le score l’ordinateur est 6
******Partie num16******
Saisir un chiffre compris entre 0 à 2 : 1
L’ordinateur a choisi :2
Vous avez gagné !!
Votre score est 5 et le score l’ordinateur est 6
******Partie num17******
Saisir un chiffre compris entre 0 à 2 : 1
L’ordinateur a choisi :0
Vous avez perdu !!
Votre score est 5 et le score l’ordinateur est 7
******Partie num18******
Saisir un chiffre compris entre 0 à 2 : 2
L’ordinateur a choisi :2
Votre score est 5 et le score l’ordinateur est 7
******Partie num19******
Saisir un chiffre compris entre 0 à 2 : 0
48
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

L’ordinateur a choisi :0
Votre score est 5 et le score l’ordinateur est 7
******Partie num20******
Saisir un chiffre compris entre 0 à 2 : 1
L’ordinateur a choisi :0
Vous avez perdu !!
Votre score est 5 et le score l’ordinateur est 8
******Partie num21******
Saisir un chiffre compris entre 0 à 2 : 2
L’ordinateur a choisi :0
Vous avez gagné !!
Votre score est 6 et le score l’ordinateur est 8

******Partie num22******
Saisir un chiffre compris entre 0 à 2 : 1
L’ordinateur a choisi :0
Votre score est 6 et le score l’ordinateur est 8
******Partie num23******
Saisir un chiffre compris entre 0 à 2 : 0
L’ordinateur a choisi :1
Vous avez gagné !!
Votre score est 7 et le score l’ordinateur est 8
******Partie num24******
Saisir un chiffre compris entre 0 à 2 : 1
L’ordinateur a choisi :0
Vous avez perdu !!
Votre score est 7 et le score l’ordinateur est 9
******Partie num25******
Saisir un chiffre compris entre 0 à 2 : 0
L’ordinateur a choisi :2
Vous avez perdu !!
Votre score est 7 et le score l’ordinateur est 10

Dommage !! Vous avez perdu !!

Exercice n°6: Table de multiplication


Une école primaire veut disposer un logiciel pour enseigner aux enfants quelques rudiments
d’arithmétique, en particulier les tables de multiplication.
Le fonctionnement d’un tel système doit permettre à tout élève de vérifier ses connaissances
au cours d’une session (suite de questions au système, réponses de l’élève).
Chaque session se déroulera ainsi :
 Le système propose deux nombres entre 0 et 10.
49
//Chapitre 4 : Les structures itératives 3 éme année Sciences Techniques

 L’élève donne le produit.


 En cas de réponse , un message s’affiche et une nouvelle question est posée.
La fin de la session survient quand l’élève a fourni 20 bonnes réponses ou 10 fausses.
Ecrire l’algorithme qui stimule ce jeu.
Exemple :
******La question num1******
5*8= ?
Saisir votre réponse svp :40
Réponse juste !!
Le nombre de réponses justes 1 et le nombre de réponses fausses 0

******La question num2******


10*9= ?
Saisir votre réponse svp :90
Réponse juste !!
Le nombre de réponses justes 2 et le nombre de réponses fausses 0
******La question num3******
8*8= ?
Saisir votre réponse svp :62
Réponse fausse !!
Le nombre de réponses justes 2 et le nombre de réponses fausses 1
………………………………….
………………………………….
******La question num26******
5*1= ?
Saisir votre réponse svp :5
Réponse juste !!
Le nombre de réponses justes 20 et le nombre de réponses fausses 6

Bien joué !!! Vous avez gagné !!

50

Vous aimerez peut-être aussi