Université de Ngaoundéré
Institut Universitaire de Technologies (IUT)
Génie Info 1
UE : Algorithmique et programmation (IFT 142)
FICHE DE TRAVAUX DIRIGES :
Exercice 1 :
Quelles seront les valeurs des variables A, B et C après exécution des instructions suivantes ?
Variables A, B, C : Entier
Début
A 8
B -2
C A + B
A 4
C B – A
Fin
Exercice 2 :
Quelles seront les valeurs des variables A et B après exécution des instructions suivantes ?
Variables A, B : Entier
Début
A 2
B A + 5
A A + B
B B + 2
A B – A
Fin
Exercice 3 :
Que produit l’algorithme suivant ?
Variables A, B : Entier
Début
écrire("entrer la valeur de A : ")
lire(A)
écrire("entrer la valeur de B : ")
lire(B)
A A + B
B A - B
A A – B
écrire(" A = ",A) écrire(" B = ",B)
Fin
Exercice 4 :
Que produit l’algorithme suivant ?
Variables A, B, C : chaîne de caractères
Début
A "423"
1
B "12"
C A &B
écrire(" C = ",C)
Fin
Exercice 5 :
1. Ecrire un algorithme permettant d’échanger les valeurs de deux variables A et B, et ce quel
que soit leur contenu préalable.
2. On dispose de trois variables A, B et C. Ecrivez un algorithme transférant à A la valeur de B,
à B la valeur de C et à C la valeur de A (quels que soient les contenus préalables de ces
variables).
Exercice 6 :
Ecrivez un algorithme qui calcule et affiche la surface et la circonférence d’un cercle (2πr et 2πr).
L’algorithme demandera à l’utilisateur d’entrer la valeur du rayon.
Exercice 7 :
Comment calculer le plus rapidement possible x16 ? Calculer x25 avec le minimum de
multiplication.
Exercice 8 :
Ecrivez un algorithme qui calcule et affiche la surface et la circonférence d’un cercle (2πr et 2πr).
L’algorithme demandera à l’utilisateur d’entrer la valeur du rayon.
Exercice 9 :
Écrire un algorithme qui effectue la lecture du temps t en seconde, et il affiche le temps t en
jours, heure, minutes, secondes.
Exercice 10 :
Ecrivez un algorithme qui donne le maximum de trois nombres saisis au clavier. Effectuez des
tests pour : 2 5 8 ; 3 1 3 ; 8 -6 1.
Exercice 11 :
Ecrivez un algorithme qui demande deux nombres à l’utilisateur et l’informe ensuite si leur
produit est négatif, positif ou nul (attention : on ne doit pas calculer le produit des deux
nombres).
Exercice 12 :
Écrivez un algorithme qui permet de déscerner une mention à un étudiant selon la moyenne de ses
notes :
- "Très bien" pour une moyenne comprise entre 16 et 20 (16<= moyenne <=20)
- "Bien" pour une moyenne comprise entre 14 et 16 (14<= moyenne <16)
2
- "Assez bien" pour une moyenne comprise entre 12 et 14 (12<= moyenne <14)
- "Passable" pour une moyenne comprise entre 10 et 12 (10<= moyenne <12)
Exercice 13 :
Écrivez un algorithme qui permet de résoudre une équation du second degré
(a x 2 + b x + c = 0 avec a non nul)
Exercice 14 :
Les étudiants ayant passé l'examen d’algorithmique en session de Juin ont été classés selon leurs
notes en trois catégories :
- pour une note inférieure strictement à 5, l'étudiant est éliminé,
- pour une note supérieure ou égale à 5 et inférieur strictement à 10, l'étudiant passe la
session de rattrapage,
- pour une note supérieure ou égale à 10, l'étudiant valide le module.
Ecrivez un algorithme qui demande à l’utilisateur d’entrer la note du module, puis affiche la
situation de l'étudiant selon sa note (on suppose que l'utilisateur entre une note valide entre 0 et
20).
Exercice 15 :
1. Écrivez un algorithme qui affiche 100 fois la phrase : "je ne dois pas arriver en retard en
classe".
2. Écrivez un algorithme qui affiche les entiers de 1 à 100.
3. Écrivez un algorithme qui affiche les entiers pairs de 1 à 100.
NB: Utiliser différents types d’instructions itératives.
Exercice 16 :
1. Écrivez un algorithme qui calcule la somme des n premiers nombres entiers positifs.
L’algorithme demandera à l’utilisateur d’entrer la valeur de n.
2. Écrivez un algorithme qui calcule la somme des n premiers nombres entiers positifs paires.
L’algorithme demandera à l’utilisateur d’entrer la valeur de n.
Exercice 17 :
1. Exécuter le programme suivant et dire ce qu’il fait :
Variable i, j : Entier
debut
Pour i1 jusqu’à 5
Ecrire(" i= ", i)
Pour j1 jusqu’à 3
Ecrire("le produit de",i," et ",j," est:",i*j)
3
FinPour
FinPour
Fin
2. Exécuter le programme suivant dire ce qu’il fait :
Variable i, j : Entier
debut
Pour i1 jusqu’à 5
Ecrire(" i= ", i)
FinPour
Pour j1 jusqu’à 3
Ecrire("le produit de",i," et ",j," est:",i*j)
FinPour
Fin
Exercice 18 :
1. Écrivez un algorithme qui calcule la somme S suivante : S = 1² + 2² + 3² + … +
(n-1)² + n². L’algorithme demandera à l’utilisateur d’entrer la valeur de n.
2. Écrivez un algorithme qui calcule le factoriel de n : n ! = 1×2×3× … ×(n-1)× n.
L’algorithme demandera à l’utilisateur d’entrer la valeur de n.
Exercice 19 :
Soit l’algorithme suivant :
variables a,b,r : entiers
début
écrire("donner les valeurs de a et b : ")
lire(a,b)
TantQue b>0 faire
r a%b /* a%b :reste de la division de a par b */
a b
b r
FinTanQue
écrire(a)
Fin
1. Exécuter l’algorithme (afficher dans un tableau les valeurs de a, b et r) pour :
a. a = 50 et b = 45
b. a = 21 et b = 13
c. a = 96 et b = 81
2. Que fait cet algorithme.
Exercice 20:
1. Un nombre entier p (différent de 1) est dit premier si ses seuls diviseurs positifs sont 1 et
p. Ecrivez un algorithme qui effectue la lecture d’un entier p et détermine si cet entier est
premier ou non.
4
2. Deux nombres entiers n et m sont qualifiés d’amis, si la somme des diviseurs de n est
égale à m et la somme des diviseurs de m est égale à n (on ne compte pas comme diviseur
le nombre lui même et 1).
Exemple : les nombres 48 et 75 sont deux nombres amis puisque :
Les diviseurs de 48 sont : 2, 3, 4, 6, 8, 12, 16, 24 et 2 + 3 + 4 + 6 + 8 + 12 + 16 + 24 = 75
es diviseurs de 75 sont : 3, 5, 15, 25 et 3 + 5 + 15 + 25 = 48.
Ecrire un algorithme qui permet de déterminer si deux entiers n et m sont amis ou non.
Exercice 21 :
1. Ecrivez un algorithme qui lit la taille n d’un tableau T, il saisi les n éléments du
tableau T, il effectue la somme des n éléments du tableau et il affiche cette somme.
2. Ecrivez un algorithme qui lit la taille n de deux tableaux T1 et T2, il effectue la lecture
de ces deux tableaux, ensuite il effectue la somme des tableaux T1 et T2 dans un
tableau T et il affiche le tableau T.
Exemple :
pour n=8 T1=[4,5,8,-2,5,6,0,-5], T2=[1,-5,-7,0,-1, 3,-8,9], le tableau T
obtenu est : T=[5,0,1,-2,4,9,-8,4].
Exercice 22 :
1. Ecrivez un algorithme qui permet à l’utilisateur de saisir les notes d'une classe, ensuite il
renvoie le nombre de ces notes supérieures à la moyenne de la classe.
2. Ecrivez un algorithme qui permet à l’utilisateur de saisir un tableau de taille n et
d’afficher le plus grand et le plus petit élément du tableau.
Exercice 23 :
Que produit l’algorithme suivant ?
Variable Tableau F[10], i : entier
début
F[0] 1
F[1] 1
écrire(F[0],F[1])
pour i allant de 2 à 10 faire
F[i] F[i-1]+F[i-2]
écrire(F[i])
finpour
fin
Exercice 24 :
Refaire les Exercices sur les tableaux en utilisant des tableaux dynamiques.