Beruflich Dokumente
Kultur Dokumente
Ce qui a t vu
Tableaux deux dimensions
Quelques algorithmes
Problme
Ds quon commence crire des programmes
sophistiqus, il devient difficile davoir une
vision globale sur son fonctionnement
Difficult de trouver des erreurs
Solution : dcomposer le problme en sous
problmes
Trouver une solution chacun
La solution partielle donne lieu un sous-programme
Programmation procdurale
Principe:
Il sagit dcrire des programmes en
utilisant des sous-programmes
Sous-programme SPn
FinP
4
Exemple
Algorithme qui teste si M est la matrice inverse
de N
Algorithme A
A1: Lecture de M
A2: Lecture de N
A3: Affecter O le rsultat de M*N
A4: Tester si O est lidentit
A5: Affichage du message adquat
Fin A
5
Plan
Fonctions
Paramtres
Type retourn
Procdures
Paramtres
Appel par variable
Appel par valeur
Fonctions : structure
Une fonction est un sous-programme
qui :
A un nom
Peut avoir des paramtres
Qui retourne une valeur dun certain type
Qui peut avoir besoin de variables
Qui est compos dinstructions
Fonctions : dclaration
Fonctions : Exemple
Fonction qui retourne le carr dun
entier :
Fonction carr(n : entier): entier
Dbut
carr n * n
fin fonction
10
Fonctions: A retenir
Une fonction retourne toujours une valeur
Une fonction NomF contient toujours une
instruction de la forme
NomF Expression
Il ne faut jamais utiliser dinstructions de la forme
f(paramtres) expression
En gnral, lutilisation dune fonction se fait
Soit par une affectation: v f(paramtres)
Soit dans lcriture: Ecrire ( f(paramtres) )
12
13
14
Fonction : exemple
Ecrire un algorithme qui
lit un tableau de 5 entiers puis
teste sil est tri ou pas
16
Fonction : exemple
Algorithme ex1
Variable T1 : tableau[5] dentier
Variable i : entier
Fonction Tri()
Fin fonction
Dbut
Pour i = 1 5
Lire( T1(i))
Fin Pour
Si Tri(T1) = Vrai Alors
Ecrire( cest tri )
FinSi
Sinon
Ecrire( Non tri )
FinSinon
Fin
17
Fonctions : en VBA
Function tri(t() As Integer) As Boolean
Dim b As Boolean
Dim i as Integer
b = True
For i = 1 To 4
If t(i) > t(i + 1) Then
b = False
End If
Next
tri = b
End Function
18
Fonctions : VBA
VBA propose plusieurs fonctions qui
sont dj dfinies et quon peut
utiliser dans nos programmes
Exemples :
Sqr : retourne la racine carre
Sqr(4) retourne 2
20
Procdures : dfinition
Une procdure est un sous-programme qui
ne retourne pas de valeur
Cest donc un type particulier de fonction
En gnral, une procdure modifie la valeur
de ses paramtres
Je dis bien en gnral , ce nest pas toujours
le cas
21
Procdures : structure
Tout comme les fonctions, une
procdure est un sous-programme
qui :
A un nom
Peut avoir des paramtres
Qui retourne une valeur dun certain type
Qui peut avoir besoin de variables
Qui est compos dinstructions
22
Procdures : dclaration
Procdures : exemple
Une procdure qui ajoute 2 un
entier
procdure aug2(n : entier)
Dbut
n n+2
Fin Procdure
24
25
Fin Procdure
Dbut
Lire(n)
i1
Tant que i n
Ecrire(i)
aug2(i)
Fin TantQue
Fin
26
Procdures : A retenir
Une procdure ne retourne pas de
valeur
Il est donc faux de laffecter une
variable
Ne pas crire : j aug2(i)
27
Procdures : en VBA
Sub aug2(n as integer)
n = n +2
End sub
Tous les programmes quon a crits
jusqu prsent taient en fait
Des procdures sans paramtres
28
29
30
31
32
33
34
Fin procdure
36
38
Procdure de saisie
Procdure saisir(t:tableau[5] dentiers)
variable i: entier
Dbut
Pour i = 1 5
Lire(t(i))
Fin Pour
Fin Procdure
39
40
41
Procdure de Tri
Procdure Trier(T: Tableau[5] dentiers)
Variable i: entier
Pour i = 1 4
Echanger(i, IndMax(i,T), T)
FinPour
FinProcdure
42