´ 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
© Copyright 2025 ExpyDoc