Title: Algorithmique suite
1Algorithmique (suite)
- DEUG Sciences économiques
2Rappel de ce qui a été vu
- Notion de variable (déclaration)
- Instructions
- Affectation ?
- Lecture Lire(variable)
- Ecriture Ecrire(variable, valeur, ou
expressions) - Structures de contrôle
- Condition simple Si Finsi
- Condition avec alternative Si Sinon SinSinon
- Répétition Tant que FinTantQue
- Structure dun algorithme
3Plan
- Exemples dalgorithmes
- La structure de répétition Pour
- Structure de tableau à une dimension
- Définition
- Déclaration
- Manipulation
- Quelques algorithmes
- Notation Visual Basic Application
4Algorithme 1
- Écrire un algorithme qui permet de
- Lire une note puis
- affiche un message. Ce dernier sera
-  reçu(e) si la note lue est supérieure ou
égale à 10 -  recalé(e) si la note est inférieure à 10
5Algorithme 1
- De quelles variables a-t-on besoin ?
- On na besoin que dune seule variable. Appelons
la X - Quelle est le type de cette variable ?
- A priori, une note est un réel
6Algorithme 1
- Description de lalgorithme
- On lit dabord la variable X
- On teste ensuite sa valeur
- Si elle est c alors on affiche  reçu(e)Â
- Sinon, on affiche  recalé(e)Â
7Algorithme 1
- Algorithme Exemple1
- Variable X réel
- Début
- Lire(X)
- Si X ? 10 alors
- Ecrire( reçu(e) )
- Finsi
- Sinon
- Ecrire( recalé(e) )
- FinSinon
- Fin
-
8Algorithme 1
Algorithme Exemple1 Variable X
réel Début Ecrire ( donner une
note ) Lire(X) Si X ? 10 alors Ecrire( r
eçu(e) ) Finsi Sinon Ecrire( recalé(e)Â
) FinSinon Fin
9Algorithme 1
Algorithme Exemple1 Ecrire (Â donner une
note ) Lire(X) Tant que (Xlt0) Ecrire(X,
 nest pas une note valable ) Ecrire( taper
une autre valeur ) Lire(X) FinTantQue Si
X ? 10 alors Fin
10Algorithme 1
Algorithme Exemple1 Ecrire (Â donner une
note ) Lire(X) Tant que ((Xlt0) OU (X gt
20)) Ecrire(X, Â nest pas une note
valable ) Ecrire( taper une autre
valeur ) Lire(X) FinTantQue Si X ? 10
alors Fin
11Algorithme 2
- Écrire un algorithme qui
- lit deux notes puis
- affiche leur moyenne
12Algorithme 2
- De quelles variables a-t-on besoin ?
- Première solution
- Deux variables pour les deux notes. Appelons les
X et Y - Une variable pour la moyenne. Appelons la M
- Chacune de ces 3 variables est un réel
- Deuxième solution
- On peut nutiliser que deux variables X et Y pour
les deux notes. La moyenne sera calculée lors de
laffichage
13Algorithme 2
- Description de lalgorithme
- On lit dabord les deux notes
- On calcule leur moyenne
- On affiche la moyenne
14Algorithme 2
- Sub exemple1()
- Dim X, Y As Integer
- Dim M As Double
- X InputBox("donner x")
- Y InputBox("donner y")
- M (X Y)/2
- MsgBox("Moyenne de"X"et"Y" est " M)
- End Sub
15Algorithme 2
- Algorithme Exemple 2
- Variable X, Y, M réel
- Début
- Lire(X)
- Lire(Y)
- Ecrire( moyenne de , X,  et , Y ,  est ,
(XY)/2) - Fin
16Algorithme 3
- Ecrire un algorithme qui
- Lit 5 notes puis
- Affiche leur moyenne
- On peut reprendre le même principe
- 5 variables pour les notes toutes réelles
17Algorithme 4
- Ecrire un algorithme qui
- Lit 100 notes puis
- Affiche leur moyenne
- On peut aussi sen sortir en utilisant là aussi
100 notes mais ça devient lourd
18Algorithme 4
- Idée
- La moyenne est calculée en faisant la somme de
toutes les notes lues - Utiliser une boucle Tant que qui nous permet de
- Lire 100 fois la même variable X
- A chaque fois quon lit une nouvelle valeur de X,
on la rajoute à une variable S - A la fin, il suffit de diviser S par 100 pour
avoir la moyenne
19Algorithme 4
- De quelles variables a-t-on besoin ?
- X va nous permettre de lire les notes
- S va nous permettre de calculer la somme
- Nous avons aussi besoin dune variable i qui nous
permet de compter le nombre de fois quon lit X - X et S sont de type réel, alors que i est de type
entier
20Algorithme 4
- Algorithme exemple4
- Variable X, S réel
- Variable i entier
- Début
- i? 1 initialisation de i
- S ? 0 initialisation de S
- Tant que i ? 100
- Lire (X)
- S ? S X
- i ? i 1
- FinTantQue
- Ecrire ( la moyenne est , S/100)
- Fin
21La structure de répétition Pour
- Permet de répéter lexécution dune suite
dinstructions un certain nombre de fois - Syntaxe
- Pour variableval1 Ã val2
- Instructions
- FinPour
22La structure de répétition Pour
- Exemple
- Pour i 1 Ã 100
- Ecrire( donner une note )
- Lire (X)
- FinPour
- La première valeur de i est 1
- A chaque itération, on ajoute 1 à i
23La structure de répétition Pour
- Pour i10 Ã 8
- Ecrire(i)
- FinPour
- Cette boucle ne sera exécutée aucune
- fois car Val1 gt Val2
- On peut toujours remplacer une boucle Pour par
une boucle TantQue. Linverse nest pas vrai.
24La structure de répétition Pour
- Algorithme exemple4
- Variable X, S réel
- Variable i entier
- Début
- i? 1 initialisation de i
- S ? 0 initialisation de S
- Tant que i ? 100
- Pour i 1 Ã 100
- Lire (X)
- S ? S X
- i ? i 1
- FinTantQue
- FinPour
- Ecrire ( la moyenne est , S/100)
- Fin
25La structure de répétition Pour
- Ecrire un algorithme qui affiche le produit de
tous les nombres compris entre 1 et 10 - Idée 1
- Utiliser deux variables entières i et j
- i et j prennent leurs valeurs dans lintervalle
1..10 - A chaque nouvelle valeur, on affiche ij
26Structure de répétition Pour
- Algorithme exemple5
- Variable i, j entier
- Début
- Pour i 1 Ã 10
- Pour j 1 Ã 10
- Ecrire(i, , j, , i j)
- FinPour
- FinPour
- Fin
i1, j 1..10 i 2, j1 .. 10 i10, j1 .. 10
27Structure de répétition Pour
- Idée 2
- Utiliser deux variables entières i et j
- i prend ses valeurs dans lintervalle 1..10
- j prend ses valeurs dans lintervalle i..10
- Ceci nous permettra déviter de calculer deux
fois le même produit
28Structure de répétition Pour
- Algorithme exemple5
- Variable i, j entier
- Début
- Pour i 1 Ã 10
- Pour j i à 10
- Ecrire(i, , j, , i j)
- FinPour
- FinPour
- Fin
i1, j 1..10 i 2, j2 .. 10 i10, j10 .. 10
29Structure de tableau à une dimension
- Définition
- On lappelle aussi vecteur.
- Il est composé dun certain nombre de cases
- Chaque case peut prendre une valeur
- Toutes les cases ont le même type
- Une case est repérée par son indice
Contenu
8
7
9
0
5
4
3
1
Indices
1
2
3
4
5
6
7
8
30Structure de tableau à une dimension
- Déclaration
- Variable nom_var Tableaunb de Type
- Exemple
- Variable T Tableau5 dentiers
- Ceci va créer une variable T qui est un tableau
contenant 5 cases
31Structure de tableau à une dimension
- Manipulation
- Un tableau est lue case pas case
- Lire (T10) revient à lire la case dont lindice
est 10 - Si T est un tableau, alors Lire(T) est une
instruction erronée - Ainsi, chaque case du tableau est manipulable
comme si cétait une variable simple classique
32Structure de tableau à une dimension
- Ecrire un algorithme qui
- Lit un tableau de 10 entiers puis
- Affiche la variance de ces 10 entiers
- Rappel variance ? (xi M)2/n où
- M est la moyenne
- N est le nombre de valeurs
33Structure de tableau à une dimension
Algorithme Exemple6 Variable T Tableau10
dentiers Variable i entier Variable M, V
réel Début M ? 0 V ? 0 Pour i 1 Ã
10 Lire(Ti) M ? M Ti FinPour M ?
M/10 Pour i 1 Ã 10 V ? V (Ti
M)2 FinPour Ecrire (V/10) Fin
34Notation Visual Basic
- Variable NomV Type
- Dim NomV As Type (integer, long, double, string,
- Nom ? expression
- Nom expression
- Lire (NomV)
- NomV InputBox()
- Ecrire (expression)
- MsgBox(expression)