TD1 ALGORITHMIQUE

publicité
UNIVERSITE IBN ZOHR
CUAM
2016/2017
SERIE 1 : ALGORITHMIQUE
SMC4
Exercice 1
Quelles seront les valeurs des variables A, B et C après exécution des instructions
suivantes ?
Début
Variables
A, B, C : Entier
A← 3
B ← 10
C ←A+ B
B←A* C
A← C % 4
C ← A - B/A
Fin
Solution :
A=1 B=39 C=-38
Exercice 2
Quel résultat produit le programme suivant ?
Variables
val, Double : réels
Début
Val ← 231
Double ← Val * 2
Écrire (Val)
Écrire (Double)
Fin
Solution :
231
461
Exercice 3
Quelles sont les valeurs des variables A, B et C après exécution des instructions suivantes ?
Algorithme valeur_variables_1
Variables A, B, C : Entier
Début
A← 2
B ←A+5
A ← 10
Fin
Algorithme valeur_variables_2
Variables A, B, C : Entier
Début
A← 3
B ← 10
C ←A+ B
A← 1
B←A- B
A← C
Fin
Algorithme valeur_variables_3
Variables A, B, C : Entier
Début
A← 7
B←6
C ←A+ B
A ← A+5
B←A+ B
Fin
Algorithme valeur_variables_4
Variables A, B, C : Entier
Début
A← 3
B ← 10
C ←A+ B
B←A+ B
A ← C-4
Fin
Solution
B =7 A=10
A= 13 B= 0 C= 13
A= 12 B= 18 C= 13
A= 9 B= 13 C= 13
Exercice 4
Écrire un programme qui échange la valeur de deux variables. Exemple, si a = 1 et b = 3,
le programme donnera a = 3 et b = 1.
Algorithme Echange
Variables
a, b, ech : entier
Début
afficher("saisir 2 entiers :")
saisir(a,b)
afficher(" avant échange : a = ", a, "b= ", b)
ech ← a
a←b
b ← ech
afficher(" après échange : a = ", a, "b= ", b)
Fin
ou bien Écrire("saisir 2 entiers :")
Lire(a,b)
Exercice 5
Écrire un programme qui demande un nombre à l’utilisateur, puis qui calcule et affiche
le carré de ce nombre.
Algorithme CarreNombre
Variables
a, cr_a : entiers
Début
afficher("saisir 1 entier :")
saisir(a)
cr_a ← a*a
afficher(" le carré de : ", a, " est :", cr_a)
Fin
Exercice 6
Quel est le résultat des algorithmes suivants ?
Variables A, B, C : Chaine de caractères
Début
A ← "1234"
B ← "56"
C ←A+ B
Fin
Variables A, B, C : Chaine de caractères
Début
A ← "1234"
B ← "56"
C ←A&B
Fin
Solution
1- Erreur d’exécution
2- "123456"
Exercice 7
Donner le contenu de la variable X après la série des actions suivantes :
variables X : Entier
Début
X←5
{ X + 1 ← X%3 }
X + 1 ← X mod(3)
Fin
Solution
Erreur d’affectation
Exercice 8
Ecrire l'algorithme qui lit un entier n, puis calcule et affiche son double et son carré.
Algorithme CarreDouble
Variables
n, double, carre : entier
Début
Ecrire ("Entrez un nombre :")
Lire (n)
double ← n+n
carre ← n * n
Ecrire ("Son double est : ", double)
Ecrire ("Son carré est : ", carre)
Fin
Exercice 9
Ecrire un algorithme qui lit le prix hors taxe d’un produit, le nombre de produit achetés, le
taux de TVA et calcule le prix total TTC.
Algorithme prix_ttc
Variable
nb : entier
PHT, PTTC, TVA : réel
Début
Ecrire ( " donner le prix hors taxe")
Lire PHT
Ecrire (" donner le nombre d’articles")
Lire (nb)
Ecrire (" donner la tva")
Lire (TVA)
PTTC ← nb*PHT*(1+TVA)
Ecrire(" le prix total TTC : ", PTTC)
Fin
Exercice 10
Ecrire un algorithme qui permet de calculer le nombre de radiateurs dont on a besoin pour
chauffer une pièce.
Notons qu’un radiateur est capable de chauffer 8m3. L’utilisateur donnera la longueur, la
largeur et la hauteur de la pièce en mètres.
Algorithme nombre_radiateur
Variables
longueur, largeur, hauteur, volume : réel
nombre : entier
Constante
(capacite : entier) 8
Début
Ecrire ("Saisir la longueur, la largeur et la hauteur")
Lire( longueur, largeur, hauteur)
volume ← longueur × largeur × hauteur
nombre ← volume/capacité
Ecrire("pour le volume ", volume)
Ecrire("nous avons besoin de : ", nombre)
Fin
Exercice 11
Ecrire un algorithme qui calcule :
- le périmètre et la surface d’un rectangle.
- le périmètre et la surface d’un cercle.
- la surface latérale et le volume d’un cylindre.
- la surface s et le volume v d’une sphère.
Algorithme SurfacePerimetre
Variables
longueur, largeur, rayon, hauteur : Réel
Constante
(pi :Reel) 3,14
Debut
Ecrire (" Saisir la longueur et la largeur du rectangle")
Lire( longueur, largeur)
Ecrire (" Le périmètre est : ", (longueur + largeur)*2)
Ecrire( " La surface est : ", longueur*largeur)
Ecrire (" Saisir le rayon du cercle")
Lire( rayon)
Ecrire( " Le périmètre est : ", 2 * pi * rayon)
Ecrire( " La surface est : ", pi* (rayon ^ 2))
Ecrire (" Saisir la hauteur et le rayon du cylindre")
Lire(rayon, hauteur)
Ecrire (" La surface latérale est : ", 2 * pi * rayon* hauteur)
Ecrire( " Le volume est : ", pi* (rayon ^ 2) * hauteur)
Ecrire (" Saisir le rayon de la sphère")
Lire (rayon)
Ecrire( " La surface est : ", 4 * pi* (rayon ^ 2))
Ecrire (" Le volume est : ", 4 * pi* (rayon ^ 3) /3)
Fin
Téléchargement