1 / 14
Master 2
« Technologies numériques
appliquées à l’histoire »
Année universitaire 2015-2016
Algorithmique Correction des exercices
1 Affectations ...................................................................................................................................... 2
1.1 Nombres ...................................................................................................................................... 2
1.2 Chaînes de caractères ..................................................................................................................... 2
1.3 Echange à 2 variables ..................................................................................................................... 2
1.4 Echange à 3 variables ..................................................................................................................... 2
1.5 Calcul de moyenne ......................................................................................................................... 3
1.6 Prix TTC ....................................................................................................................................... 4
2 Structures conditionnelles ................................................................................................................... 4
2.1 Exemple simple ............................................................................................................................. 4
2.2 Conditions multiples ....................................................................................................................... 4
2.3 Tri de chaînes de caractères ............................................................................................................. 5
2.4 Produit de 2 nombres ..................................................................................................................... 5
2.5 Est-ce que je suis le(la) meilleur(e) ? ................................................................................................ 6
2.6 Catégorie d’âge ............................................................................................................................. 7
2.7 Calculatrice simple ......................................................................................................................... 7
2.8 Photocopies .................................................................................................................................. 8
2.9 Monnaie ....................................................................................................................................... 8
3 Boucles ............................................................................................................................................ 8
3.1 Entraînement ................................................................................................................................ 8
3.2 Validation des données ................................................................................................................... 9
3.3 Calculatrice un peu plus évoluée ....................................................................................................... 9
3.4 Table de multiplication ................................................................................................................... 10
3.5 Table de multiplication en double boucle ........................................................................................... 10
3.6 Jeu de recherche d’un nombre ......................................................................................................... 11
3.7 Force brute .................................................................................................................................. 11
4 Tableaux ......................................................................................................................................... 11
4.1 Echauffement ............................................................................................................................... 11
4.2 Recherche dans un tableau ............................................................................................................. 11
4.3 Calcul de moyenne, minimum et maximum........................................................................................ 12
4.4 Remplir un tableau à partir d’un autre .............................................................................................. 12
4.5 Listes d’acteurs de cinéma .............................................................................................................. 13
4.6 Insertion dans un tableau trié ......................................................................................................... 14
4.7 Trier un tableau ............................................................................................................................ 14
2 / 14
1 Affectations
1.1 Nombres
Quelles seront les valeurs des variables A et B après exécution des instructions suivantes ?
VARIABLES
A : nombre réel
B : nombre réel
DEBUT
A 5
B A + 5
A A B
ECRIRE(A)
ECRIRE(B)
FIN
A = -5
B = 10
#!/bin/bash
# Variables :
# A : nombre réel
# B : nombre réel
A=5
echo "A vaut" $A
B=$((A + 5))
echo "B vaut" $B
A=$((A - B))
echo "A vaut" $A
exit 0
1.2 Chaînes de caractères
Quelles seront les valeurs des variables A et B après exécution des instructions suivantes ?
VARIABLES
A : chaîne de caractère
B : chaîne de caractère
DEBUT
A 5
B 10
A A + B
ECRIRE(B)
FIN
510
1.3 Echange à 2 variables
1.4 Echange à 3 variables
Ecrire un algorithme qui permette d’échanger les valeurs :
3 / 14
Transfert de la valeur de A dans B
Transfert de la valeur de B dans C
Transfert de la valeur de C dans A
Par exemple, au départ A=1, B=2, C=3, et au final A=3, B=1, C=2.
#!/bin/bash
# Variables :
# A : nombre réel
# B : nombre réel
# C : nombre réel
# temp : nombre réel
# Initialisation des variables
A=1
B=2
C=3
echo "A vaut" $A
echo "B vaut" $B
echo "C vaut" $C
# Transfert des valeurs
temp=$C
C=$B
B=$A
A=$temp
#Affichage de l'état final
echo "----------------------"
echo "A vaut" $A
echo "B vaut" $B
echo "C vaut" $C
echo "Au passage, on note que temp vaut" $temp
exit 0
1.5 Calcul de moyenne
Ecrire un algorithme qui permette de saisir 5 nombres, et d’en afficher la moyenne.
(Pour le moment, cet exercice permet de calculer une moyenne sur 5 nombres uniquement. Un exercice ultérieur permettra
l’écriture d’un algorithme fonctionnant quelque soit la quantité de nombres à moyenner.)
ALGORITHME CalculDeMoyenne5Nombres
VARIABLES
A : nombre réel
B : nombre réel
C : nombre réel
D : nombre réel
E : nombre réel
Moyenne : nombre réel
DEBUT
LIRE(A)
LIRE(B)
LIRE(C)
LIRE(D)
LIRE(E)
Moyenne (A + B + C + D + E) / 5
ECRIRE(Moyenne)
FIN
4 / 14
1.6 Prix TTC
Ecrire un algorithme qui permette de lire le prix d’un article, la quantité demandée, et qui affiche ensuite le total hors-taxe
(HT), le total toutes taxes comprises (TTC) et le montant de la TVA.
ALGORITHME PrixTTC
VARIABLES
A : nombre réel
B : nombre réel
DEBUT
LIRE(PrixunitaireHT)
LIRE(Quantite)
tauxTVA 0,196
totalHT PrixunitaireHT * quantite
totalTTC totalHT + totalHT * tauxTVA
montantTaxe totalHT * tauxTVA
# on aurait aussi pu mettre montantTaxe totalTTC totalHT
ECRIRE(totalHT)
ECRIRE(totalTTC)
ECRIRE(montantTaxe)
FIN
2 Structures conditionnelles
2.1 Exemple simple
Quel affichage va être produit par cet algorithme ?
VARIABLES
A : nombre réel
B : nombre réel
DEBUT
A 5
B A
SI (A > B)
ALORS
ECRIRE(A est plus grand que B)
FINSI
FIN
Cet algorithme n’affiche rien, car la condition A > B est fausse
2.2 Conditions multiples
Quel affichage va être produit par cet algorithme ?
VARIABLES
A : nombre réel
B : nombre réel
C : nombre réel
DEBUT
A 5
B 10
C 15
5 / 14
# Test de type ET
SI (A > B) ET (A < C)
ALORS
ECRIRE(A est plus grand que B ET plus petit que C)
FINSI
Rien ne s’affiche, car A est plus petit que B
# Test de type OU
SI (A > B) OU (A < C)
ALORS
ECRIRE(A est plus grand que B OU plus petit que C)
FINSI
L’algorithme affiche « A est plus grand que B OU plus petit que C », car A est plus petit que C
# Test avec négation
SI NON((A > B) ET (A < C))
ALORS
ECRIRE(la condition est vraie)
SINON
ECRIRE(la condition est fausse)
FINSI
L’algorithme affiche « la condition est vraie »
# Test multiple
SI NON((A > B) ET (A < C)) ET (B < C)
ALORS
ECRIRE(la condition est vraie)
SINON
ECRIRE(la condition est fausse)
FINSI
L’algorithme affiche « la condition est vraie »
FIN
2.3 Tri de chaînes de caractères
Ecrire un algorithme qui demande 2 chaines de caractère, puis les affiche par ordre alphabétique
ALGORITHME Tri de chaînes de caractères
VARIABLES
chaineA : chaîne de caractères
chaineB : chaîne de caractères
DEBUT
LIRE(chaineA)
LIRE(chaineB)
SI (chaineA < chaineB)
ALORS
ECRIRE(chaineA chaineB)
SINON
ECRIRE(chaineB chaineA)
FINSI
FIN
2.4 Produit de 2 nombres
1 / 14 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!