0% ont trouvé ce document utile (0 vote)
37 vues5 pages

Semaine 2

Transféré par

Sihem Nasri
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
37 vues5 pages

Semaine 2

Transféré par

Sihem Nasri
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TD2: Les structures conditionnelles

esprit ►
Matière : Algorithmique 1 Unité pédagogique : Algorithmique &
Ecole Supérieure Privée
d’Ingénierie et de Support : Série d'exercices Programmation
Technologies Séance : cours
Classe(s) : 1A

Correction

Exercice 1:

Algorithme AlgEx1

Variable a, b, c: entier
Debut
écrire (“donnez les valeurs de a et b”)
lire(a,b) a=69 b=35
si(a < 2 * b) alors vrai
ba b=69
cb c=69

écrire(CHR(c)) le programme affiche le caractère


ayant le code ASCII 69: E

sinon le programme n’exécute pas les


instructions de sinon
b <- 0
écrire(b)

FinSi
Fin
Exercice 2:
Algorithme algo1
VARIABLE a:entier
DÉBUT
ecrire( ‘donnez un entier’)
lire(a)
si (a mod 3=0) alors
écrire ( a, ‘est un multiple de 3’)
sinon
écrire ( a, 'n’'est pas un multiple de 3’)
finsi
FIN

Algorithme algo2
VARIABLE c: caractère
DÉBUT
ecrire(‘donnez une lettre’)
lire(c)
si (c=’a’ ou c=’e’ ou c=’i’ ou c=’u’ ou c=’o’ ou c=’y’) alors //On peut noter le test des
voyelles majuscules
écrire ( c, ‘est une voyelle’)
sinon
écrire ( c, 'est une consonne’)
finsi
FIN

Algorithme ProduitNégatif
VARIABLE a,b:entier
DÉBUT
ecrire( ‘donnez le premier entier’)
lire(a)
ecrire( ‘donnez le deuxième entier’)
lire(b)
si ((a<0 et b>0) ou (a>0 et b<0)) alors
écrire ( ‘le produit est négatif’)
sinon
écrire ( ‘le produit est positif’)
finsi
FIN

Exercice 3:

Algorithme Température
VARIABLE t:réel
DÉBUT
ecrire( ‘donnez la température de l’eau’)
lire(t)
si (t<0)alors
écrire ( ‘Glace’’)
sinon
si (t<100) alors
écrire ( ‘Eau’’)
sinon
écrire(‘Vapeur’)
finsi
finsi
FIN

Exercice 4:

Algorithme HeureSup
VARIABLE h:entier
pu,m:réel
DÉBUT
ecrire( ‘donnez le nombre d’heures travaillées’)
lire(h)
ecrire(‘donnez le prix unitaire d'une heure’)
lire(pu)
si (h<40) alors
écrire ( ‘heures travaillés sans supplément ’)
sinon
si (h<45) alors
m← (h-39)*pu*1.5
écrire ( ‘le montant supplémentaire égale à‘, m)
sinon
si (h<50) alors
m← (45-40)*pu*1.5+(h-44)*pu*1.75 //ou m← (5*1.5+(h-
44)*1.75)*pu
écrire ( ‘le montant supplémentaire égale à ‘, m)
sinon
m← (45-40)*pu*1.5+(50-45)*pu*1.75+(h-49)*pu*2
écrire ( ‘le montant supplémentaire égale à’, m)
finsi
finsi
finsi
FIN

Exercice 5:
Algorithme PermisVoiture
VARIABLE permis, voiture: entier
DÉBUT
ecrire( ‘avez vous un permis de conduire (0/1)’)
lire(permis)
ecrire( ‘avez vous une voiture (0/1)’)
lire(voiture)
si (permis=1) alors
si (voiture=1) alors
écrire ( ‘Conduis moi à la gare’)
sinon
écrire( ‘Pas de voiture !’ )
finsi
sinon
si (voiture=1) alors
écrire ( ‘hors la loi’)
sinon
écrire(‘vive le vélo!’)
finsi
finsi
FIN
NB: on peut comparer la solution ci-dessus avec la suivante:
Algorithme PermisVoiture
VARIABLE permis, voiture: entier
DÉBUT
ecrire( ‘avez vous un permis de conduire (0/1)’)
lire(permis)
ecrire( ‘avez vous une voiture (0/1)’)
lire(voiture)
si (permis=1) et (voiture=1) alors
écrire ( ‘Conduis moi à la gare’)
finsi
si (permis=1) et (voiture=0) alors
écrire(‘j’ai une voiture pas chère’’)
finsi
si (permis=0) et (voiture=1) alors
écrire ( ‘hors la loi’)
finsi
si (permis=0) et (voiture=0) alors
écrire(‘vive le vélo!’’)
finsi
FIN
Pour la première solution, l’algo exécute seulement 2 comparaisons au pire des cas.
Pour la deuxième solution, l’algo peut exécuter jusqu’à 8 comparaisons au pire des cas.

Exercice 6:
Schématiser la démarche de résolution

Algorithme EquationSecondDegré
VARIABLE delta:réel
a,b,c: entier
DÉBUT
ecrire( ‘donnez la valeur de a’)
lire(a)
ecrire( ‘donnez la valeur de b’)
lire(b)
ecrire( ‘donnez la valeur de c’)
lire(c)
delta← b*b-4*a*c
si (delta<0)alors
écrire ( ‘pas de racines’’)
sinon
si (delta=0) alors
ecrire ( ‘racine=’’,-b/2*a)
sinon
ecrire ( ’’1er racine=’’,(-b-𝑠𝑞𝑟𝑡(delta) )/2*a, “2eme racine= “,(-b+ 𝑠𝑞𝑟𝑡 (delta)
)/2*a )
finsi
finsi
FIN

Exercice 7:
Algorithme Jour
VARIABLE j: entier
DÉBUT
ecrire( ’’donnez le numéro du jour de la semaine’’)
lire(j)
SELON (j) FAIRE
1: écrire ( ‘’Lundi’’)
2: écrire ( ‘’Mardi’’)
3: écrire ( ‘’Mercredi’’)
4: écrire ( ‘’Jeudi’’)
5: écrire ( ‘’vendredi’’)
6: écrire ( ‘’Samedi’’)
7: écrire ( ‘’Dimanche’’)

AUTRE : écrire ( ‘’le numéro doit être entre 1 et 7’’)


FIN SELON
FIN

Exercice 8:

Algorithme calculatrice
VARIABLE a,b: entier
op: caractère
DÉBUT
ecrire( ‘donnez la valeur de a’)
lire(a)
ecrire( ‘donnez la valeur de b’)
lire(b)
ecrire( ‘donnez l’opération arithmétique’)
lire(op)
SELON (op) FAIRE
’+’: écrire ( a+b)
’*’: écrire ( a*b)
’-’: écrire ( a-b)
’/’: écrire ( a/b)
AUTRE : écrire ( ‘opération inexistante’’)
FIN SELON
FIN

Vous aimerez peut-être aussi