Télécharger le communiqué (pdf - 117 ko)

´ des Sciences de Gabe
`s
Faculte
´partement Informatique
De
Atelier de Programmation
TP3: Les structures r´ep´etitives
Sections: LFSI1/LARI1
A.U: 2014/2015
Exercice 1 :
Soit l’algorithme suivant :
Algorithme INCONNU
Var
N, X : entier
DEBUT
R´
ep´
eter
Ecrire (" donner un entier N : ")
Lire(N)
Jusqu’`
a ( N>0)
X<--0
Tantque (N <> 0) faire
Si (N mod 10 = 0) alors
X <-- X+1
FinSi
N <-- N div 10
Fin tantque
Ecrire (" X = ", X)
FIN
1. Traduire l’algorithme ”INCONNU” en C.
2. Saisir ce programme source avec l’´editeur de texte.
3. Sauvegarder ce programme source dans votre r´epertoire.
4. Compiler le programme pour effectuer la correction
5. Ex´ecuter ce programme pour les 2 cas suivants :
(a) N = 1040
(b) N = 20400
6. Quelle est la fonction de ce programme.
7. Remplacer la boucle ”while” par ”do...while” puis par ”for”
Exercice 2 :
On veut saisir des r´eels repr´esentant les moyennes g´en´erales des N ´etudiants d’une classe, sachant que
chaque ´etudiant a une seule moyenne g´en´erale. Le nombre des ´etudiants est saisi `a partir du clavier
(5 <= N <= 20). Ecrire un programme C permettant de faire les traitements suivants :
1. Saisir les diff´erentes moyennes des N ´etudiants (une moyenne doit ˆetre comprise entre 0 et 20).
2. D´eterminer le nombre d’´etudiants admis : un ´etudiant est admis si sa moyenne est sup´erieure ou
´egale `
a 10.
3. D´eterminer le nombre d’´etudiants qui ont une mention : un ´etudiant est mentionn´e si sa moyenne
est sup´erieure ou ´egale a
` 12.
4. D´eterminer le nombre d’´etudiants ´elimin´es : un ´etudiant est ´elimin´e si sa moyenne est inf´erieure `
a
6.
5. Calculer la moyenne de la classe.
6. Calculer la moyenne des moyennes g´en´erales qui sont sup´erieures ou ´egales `a 10.
7. D´eterminer la moyenne g´en´erale la plus forte.
8. D’afficher les r´esultats.
Exemple :
Donner le nombre d’´etudiants de la classe : 6
Donner la moyenne de l’´etudiant 1 : 12.5
Donner la moyenne de l’´etudiant 2 : 5.25
Donner la moyenne de l’´etudiant 3 : 4.25
Donner la moyenne de l’´etudiant 4 : 11
Donner la moyenne de l’´etudiant 5 : 14
Donner la moyenne de l’´etudiant 6 : 10.5
Le nombre d’´etudiants admis = 4
Le nombre d’´etudiants qui ont une mention est ´egale `a 2
Le nombre d’´etudiants ´elimin´es est ´egale a`2
La moyenne de la classe est ´egale `
a 9.58
La moyenne des moyennes g´en´erales >=10 est ´egale `a 12.00
La moyenne g´en´erale la plus forte est ´egale `a 14.00
Exercice 3 :
On consid`ere deux suite (U ) et (V ) d´efinies `a partir de :
– U1 = 1
– U2 = 2
– Un = Un−1 + Un−2 pour (n >= 3)
n
pour (n >= 2)
– Vn = UUn−1
La suite (Vn ) tend vers une limite, appel´ee nombre d’or. On suppose que le k ieme terme de la suite (V )
donne une valeur approch´ee du nombre d’or avec une pr´ecision E, d´es que |Vk − Vk−1 | < E
Ecrire un programme C qui permet de calculer et d’afficher Vk `a 10−4 pr´es et son rang.
Exercice 4 :
Un nombre est divisible par 3 si la somme des chiffres est un multiple de 3.
Ecrire un programme C permettant de :
– Lire un entier N (avec N > 1).
– Lire une suite de N nombres.
– D´eterminer et afficher le nombre des ´el´ements divisibles par 3 dans la suite.
N.B : S’il n’existe pas des ´el´ements qui sont divisibles par 3 alors afficher comme r´esultat : Il n’existe
pas des ´el´ements qui sont divisibles par 3.
Exemple :
Donner la valeur de N : 7
Donner la suite des nombres : 3 11 6 10 9 -1 24
R´
esultat :
Il existe 4 entiers qui sont divisibles par 3 dans la suite.
Exercice 5 : Un entier positif X form´e de quatre chiffres ”est valable” s’il v´erifie la condition
suivante : Le chiffre des milliers, qui ne doit pas ˆetre nul, est suivi par ses multiples.
Exemple : 2486 est valable car 4, 8 et 6 sont des multiples de 2.
On vous demande d’´ecrire un programme C qui permet de :
– Saisir un entier N. (N > 1).
– Saisir une suite de N entiers (chaque entier de la suite est positif et form´e de quatre chiffres).
– Chercher et afficher le nombre des entiers valables dans la suite qui v´erifient la condition mentionn´ee
ci-dessus.
Exemple :
Donner la taille de la suite : 5
Donner les entiers de la suite : 2888 3761 1541 3696 5754
R´
esultat : il y a 3 entiers valables dans la suite.
2