ISMO Tétouan/ Mr.
JELLAL 1
Les algorithmes sont essentiels au traitement de l'information pour
décrire les étapes à suivre pour la résolution des problèmes.
Un programme est constitué d’un ensemble de directives, nommées
instructions, qui spécifient :
➢ Les opérations élémentaires à exécuter
➢ La façon dont elles s’enchaînent.
Domaine d’utilisation :
➢ Facturation
➢ Calculs mathématiques
➢ Gestion
…..
ISMO Tétouan / [Link] 2
ISMO Tétouan / [Link] 3
Dans un programme informatique, on va avoir en permanence besoin
de stocker provisoirement en mémoire des valeurs.
Une variable est un nom qui sert à repérer un emplacement donné de
la mémoire, c’est à dire que la variable ce n’est qu’une adresse de
mémoire.
Cette notion contribue considérablement à faciliter la réalisation des
programmes. Elle permet de manipuler des données sans avoir à se
préoccuper de l’emplacement qu’elles occupent effectivement en
mémoire.
Remarque :
Pour les noms des variables choisissez des noms représentatifs des
informations qu’ils désignent ; ainsi MONTANT est un meilleur choix
que X pour désigner le montant d’une facture.
ISMO Tétouan / [Link] 4
Déclaration des variables :
VARIABLE nom : TYPE
ou
VARIABLES nom1, nom2,… : TYPE
Types de variables :
ENTIER
Le type entier désigne l’ensemble des nombres entiers négatifs ou
positifs dont les valeurs varient entre -32 768 à 32 767.
VARIABLES i, j, k : ENTIER
REEL
Le type réel comprend les variables numériques qui ont des valeurs
réelles. La plage des valeurs du type réel est :
-3,40x1038 à -1,40x1045 pour les valeurs négatives
1,40x10-45 à 3,40x1038 pour les valeurs positives
VARIABLES x, y : REEL
ISMO Tétouan / [Link] 5
chaîne
également appelé caractère ou alphanumérique. on stocke des
caractères, qu’il s’agisse de lettres, de signes de ponctuation,
d’espaces, ou même de chiffres.
VARIABLE nom, prenom, adresse : CHAINE
Remarques :
✓ Une chaîne de caractères est notée toujours soit entre guillemets,
soit entre des apostrophes.
✓ Pour les valeurs des variables de type chaîne, il faut respecter la
casse. Par exemple, la chaîne ″Salut″ est différente de la chaîne
″salut″.
ISMO Tétouan / [Link] 6
booléen
Dans ce type de variables on y stocke uniquement des valeurs
logiques VRAI ou FAUX, TRUE ou FALSE, 0 ou 1.
VARIABLE etat : BOOLEEN
Les opérateurs :
Un opérateur est un signe qui relie deux variables pour produire un
résultat.
Pour le type numérique on a les opérateurs suivants :
+ : Addition
- : Soustraction
* : Multiplication
/ : Division
^ : Puissance
% : Modulo (Reste de la Division)
Tandis que pour le type chaîne, on a un seul opérateur qui permet de
concaténer deux chaînes de caractères. Cet opérateur de
ISMO Tétouan / [Link] 7
concaténation est noté &.
L’affection est opération qui consiste à attribuer une valeur à une
variable. On la notera avec le signe .
VARIABLE valeur
Par exemple :
MONTANT 3500
On dit qu’on affecte (ou on attribue) la valeur 3500 à la variable
numérique MONTANT.
On peut aussi attribuer à une variable la valeur d’une variable ou
d’une expression de façon générale.
VARIABLE ← EXPRESSION
Par exemple :
AB
AB*2+5
ISMO Tétouan / [Link] 8
On peut même avoir des cas où la variable de gauche qui figure dans
l’expression à droite.
Par exemple :
AA+5
Dans cette exemple, après l’exécution de l’instruction d’affectation la
valeur de la variable A sera augmenter de 5.
Exemple :
Cas 1 Cas 2
A ← 15 A ← 15
A ← 30 B ← 10
A ← A+B
Après exécution des deux instructions d’affection, la valeur de A sera :
Cas 1 : A = 30
Cas 2 : A = 25
ISMO Tétouan / [Link] 9
1. Quelles seront les valeurs des variables A et B après exécution des instructions suivantes ?
Variables A, B : Entier
Début
A←1
B←A+3
A←3
Fin
[Link] seront les valeurs des variables A, B et C après exécution des instructions suivantes ?
Variables A, B, C : Entier
Début
A←5
B←3
C←A+B
A←2
C←B–A
Fin
ISMO Tétouan / [Link] 10
3. Quelles seront les valeurs des variables A et B après exécution des instructions suivantes ?
Variables A, B, C : Entier
Début
A←3
B ← 10
C←A+B
B←A+B
A←C
Fin
[Link] seront les valeurs des variables A, B et C après exécution des instructions suivantes ?
Variables A, B : Entier
Début
A←5
B←2
A←B
B←A
Fin
ISMO Tétouan / [Link] 11
5. Que produit l’algorithme suivant ?
Variables A, B, C : Caractères
Début
A ← “423“
B ← “12”
C←A+B
Fin
6. Que produit l’algorithme suivant ?
Variables A, B : Caractères
Début
A ← “423“
B ← “12”
C←A&B
Fin
ISMO Tétouan / [Link] 12
Il existe une instruction qui permet à l’utilisateur de faire entrer des
valeurs au clavier pour qu’elles soient utilisées par le programme. La
syntaxe de cette instruction de lecture est :
LIRE NomVariable
Une autre instruction permet au programme de communiquer des
valeurs à l’utilisateur en les affichant à l’écran. La syntaxe de cette
instruction d’écriture est :
ECRIRE NomVariable
ou de façon générale
ECRIRE Expression
Remarque :
Avant de lire une variable, il est fortement conseillé d’écrire des
libellés à l’écran, afin de prévenir l’utilisateur de ce qu’il doit frapper.
La même chose pour l’instruction d’écriture.
ISMO Tétouan / [Link] 13
Exemple :
Variables A, CARRE : Réels
DEBUT
Ecrire ‘Entrez un nombre’
Lire A
CARRE ← A * A
Ecrire ‘Le carré de ce nombre est : ’
Ecrire CARRE
FIN
Exercices :
1. Quel résultat produit le programme suivant ?
VARIABLES Val, Double : ENTIERS
Début
Val ← 231
Double ← Val * 2
ECRIRE Val
ECRIRE Double
ISMO Tétouan / [Link] 14
Fin
2. Ecrire un programme qui demande deux nombres entiers à l’utilisateur, puis qui calcule et
affiche la somme de ces nombres.
3. Ecrire un programme qui lit le prix HT d’un article, le nombre d’articles et le taux de TVA, et
qui fournit le prix total TTC correspondant. Faire en sorte que des libellés apparaissent
clairement.
4. Le surveillant général d’un établissement scolaire souhaite qu’on lui écrit un programme qui
calcule, pour chaque élève, la moyenne des notes des cinq matières. Ces matières sont avec
leur coefficient :
MATIERE COEFFICIENT
Math 5
Physique 5
Français 4
Anglais 2
Histoire - Géographie 2
ISMO Tétouan / [Link] 15
Solution :
VARIABLES mat, phy, ang, fra, hg, moyenne : REELS
Début
ECRIRE “Entrez la note de math :”
LIRE mat
ECRIRE “Entrez la note de physique :”
LIRE phy
ECRIRE “Entrez la note de français :”
LIRE fra
ECRIRE “Entrez la note d’anglais :”
LIRE ang
ECRIRE “Entrez la note d’histoire-Géo :”
LIRE hg
moyenne ← ((mat + phy) * 5 + fra * 4 + (ang+ hg) * 2) / 18
ECRIRE “La moyenne est : ”, moyenne
Fin
ISMO Tétouan / [Link] 16
Conditions simples :
Une condition simple consiste en une comparaison entre deux expressions du
même type. Cette comparaison s'effectue avec des opérateurs de
comparaison.
ISMO Tétouan / [Link] 17
Conditions complexes :
La plupart des langages autorisent des conditions formées de
plusieurs conditions simples reliées entre elles par ce qu'on appelle
des opérateurs logiques. Ces opérateurs sont : ET, OU et NON.
• Pour que la condition complexe :
condition1 ET condition2
soit VRAI, il faut impérativement que la condition1 soit VRAI et que
la condition2 soit VRAI.
• Pour que la condition :
condition1 OU condition2
soit VRAI, il suffit que condition1 soit VRAI ou condition2 soit VRAI.
Il est à noter que cette
condition complexe sera VRAI si condition1 et condition2 sont VRAI.
• Le NON inverse une condition :
NON(condition)
est VRAI si condition est FAUX, et il sera FAUX si condition est VRAI.
ISMO Tétouan / [Link] 18
La syntaxe d’une structure alternative est :
SI condition ALORS
bloc 1 d'instructions
SINON
bloc 2 d'instructions
FIN SI
Si la condition mentionnée après SI est VRAI, on exécute le bloc1
d'instructions (ce qui figure après le mot ALORS); si la condition est
fausse, on exécute le bloc2 d'instructions (ce qui figure après le mot
SINON).
ISMO Tétouan / [Link] 19
Exemple :
SI a > 0 ALORS
ECRIRE ''valeur positive''
SINON
ECRIRE ''valeur négative''
FIN SI
La structure alternative peut prendre une autre forme possible où
l'une des parties du choix est absente :
SI condition ALORS
bloc d'instructions
FIN SI
Exemple :
SI montant > 5000 ALORS
montant ← montant * 0.9
FIN SI
ISMO Tétouan / [Link] 20
Exercice :
Ecrire un programme qui donne l’état de l’eau selon sa température.
Solution :
Variable Temp : Entier
Début
Ecrire “Entrez la température de l’eau :”
Lire Temp
Si Temp =< 0 Alors
Ecrire “C’est de la glace“
Finsi
Si Temp > 0 Et Temp < 100 Alors
Ecrire “C’est du liquide”
Finsi
Si Temp > 100 Alors
Ecrire “C’est de la vapeur”
Finsi
Fin
ISMO Tétouan / [Link] 21
Exercices :
1. Ecrire un algorithme qui demande deux nombres à l’utilisateur et l’informe
ensuite si leur produit est négatif ou positif (on laisse de côté le cas où le
produit est nul). Attention toutefois : on ne doit pas calculer le produit des
deux nombres.
2. Ecrire un algorithme qui demande trois noms à l’utilisateur et l’informe ensuite
s’ils sont rangés ou non dans l’ordre alphabétique.
3. Ecrire un algorithme qui demande un nombre à l’utilisateur, et l’informe
ensuite si ce nombre est positif ou négatif (on inclut cette fois le traitement du
cas où le nombre vaut zéro).
4. Ecrire un algorithme qui demande deux nombres à l’utilisateur et l’informe
ensuite si le produit est négatif ou positif (on inclut cette fois le traitement du
cas où le produit peut être nul). Attention toutefois, on ne doit pas calculer le
produit !
ISMO Tétouan / [Link] 22
5. Ecrire un algorithme qui demande l’âge d’un enfant à l’utilisateur.
Ensuite, il l’informe de sa catégorie :
- « Poussin » de 6 à 7 ans
- « Pupille » de 8 à 9 ans
- « Minime » de 10 à 11 ans
- « Cadet » après 12 ans
6. A partir d’un montant lu, on détermine un montant net par application
d’une remise de :
- 1% si le montant est compris entre 2000 et 5000 Dhs
- 2 % si le montant est supérieur à 5000 Dhs.
ISMO Tétouan / [Link] 23
Solution :
1.
Variables m, n : Entier 2.
Début Variables a, b, c : Caractère
Ecrire “Entrez deux nombres : ” Début
Lire m, n Ecrire “Entrez successivement trois noms : ”
Si m * n > 0 Alors Lire a, b, c
Ecrire “Leur produit est positif” Si a < b et b < c Alors
Sinon Ecrire “Ces noms sont classés
Ecrire “Leur produit est négatif” alphabétiquement”
Finsi Sinon
Fin Ecrire “Ces noms ne sont pas classés”
Finsi
Fin
ISMO Tétouan / [Link] 24
Solution :
3.
Variable n : Entier 4.
Début Variables m, n : Entier
Ecrire “Entrez un nombre : ” Début
Lire n Ecrire “Entrez deux nombres : ”
Si n < 0 Alors Lire m, n
Ecrire “Ce nombre est négatif” Si m = 0 OU n = 0 Alors
Sinon Si n = 0 Alors Ecrire “Le produit est nul”
Ecrire “Ce nombre est nul” Sinon Si (m < 0 ET n < 0) OU (m > 0 ET n > 0)
Sinon Alors
Ecrire “Ce nombre est positif” Ecrire “Le produit est positif”
Finsi Sinon
Fin Ecrire “Le produit est négatif”
Finsi
Fin
ISMO Tétouan / [Link] 25
Solution :
5.
Variable age : Entier 6.
Début Variables montant , taux , remise : Réels
Ecrire “Entrez l’âge de l’enfant : ” Début
Lire age Ecrire “Entrez le montant : ”
Si age >= 12 Alors Lire montant
Ecrire “Catégorie Cadet” Si montant < 2000 Alors
SinonSi age >= 10 Alors taux ← 0
Ecrire “Catégorie Minime” Sinon
SinonSi age >= 8 Alors Si montant ≤ 5000 Alors
Ecrire “Catégorie Pupille” taux ← 1
SinonSi age >= 6 Alors Sinon
Ecrire “Catégorie Poussin” taux ← 2
Finsi Fin SI
Fin Fin Si
Montant ← montant * (1 – taux / 100)
Ecrire “Le montant net est : ” , montant
Fin
ISMO Tétouan / [Link] 26
Une structure répétitive sert à répéter un ensemble d’instructions. Il
existe trois formes de structures répétitives : POUR, TANT QUE, REPETER.
La structure POUR :
Cette structure permet de répéter des instructions un nombre connu de
fois. Sa syntaxe est :
Pour compteur = val_initial à val_final pas incrément
Instructions à répéter
Fin Pour
compteur est une variable de type entier.
val_initial et val_final sont respectivement les valeur initiale et final prise
par le compteur. Ce sont des valeurs entières.
incrément est la valeur d’augmentation progressive du compteur. La
valeur par défaut du pas est de 1.
ISMO Tétouan / [Link] 27
Exemple :
Réécrivons le programme du surveillant général de façon qu’il puisse calculer les
moyennes de 100 élèves.
VARIABLES mat, phy, ang, fra, hg, moyenne : REELS
VARIABLE i : ENTIER
Début
POUR i = 1 A 100
ECRIRE “Entrez la note de math :”
LIRE mat
ECRIRE “Entrez la note de physique :”
LIRE phy
ECRIRE “Entrez la note de français :”
LIRE fra
ECRIRE “Entrez la note ’anglais :”
LIRE ang
ECRIRE “Entrez la note d’histoire-Géo :”
LIRE hg
moyenne ← ((mat + phy) * 5 + fra * 4 + (ang+ hg) * 2) / 18
ECRIRE “La moyenne est : ”, moyenne
FIN POUR
Fin
ISMO Tétouan / [Link] 28
1. Ecrire un algorithme qui demande un nombre de départ, et qui ensuite écrit la
table de multiplication de ce nombre.
2. Ecrire un algorithme qui demande un nombre de départ, et qui calcule la somme
des entiers jusqu’à ce nombre. Par exemple, si l’on entre 5, le programme doit
calculer : 1 + 2 + 3 + 4 + 5 = 15
3. Ecrire un algorithme qui demande un nombre de départ, et qui calcule sa
factorielle. NB : la factorielle de 5, notée 8 ! vaut 1 x 2 x 3 x 4 x 5
4. Ecrire un algorithme qui demande successivement 20 nombres à l’utilisateur, et
qui lui dise ensuite quel était le plus grand parmi ces 20 nombres :
Entrez le nombre numéro 1 : 12
Entrez le nombre numéro 2 : 14
…
Entrez le nombre numéro 20 : 6
Le plus grand de ces nombres est : 14
Modifiez l’algorithme pour que le programme affiche la position de plus grand
5. Ecrire un algorithme qui :
- lit d’abord une valeur
- ensuite il va lire successivement 20 nombres.
- enfin il va déterminer combien de fois la première valeur a été saisie (sans
compter la première
ISMO Tétouan / [Link] 29
saisie).
1. Le programme est :
Variables i , valeur : Entiers
DEBUT
Lire valeur
POUR i = 1 A 10
Ecrire valeur & “ X ” & i & “ = ” & valeur * i
FIN POUR
FIN
2. Le programme est :
Variables i , valeur , somme : Entiers
DEBUT
Lire valeur
somme ← 0
POUR i = 1 A valeur
somme ← somme + i
FIN POUR
Ecrire “La somme des ” & valeur & “ premiers entiers est : ” & somme
FIN ISMO Tétouan / [Link] 30
3. Le programme est :
4. Le programme est :
Variables i , valeur , factoriel : Entiers
DEBUT Variables i , a , max , pmax : Entiers
Lire valeur DEBUT
factoriel ← 1 Ecrire « Entrez le nombre numéro 1 »
POUR i = 1 A valeur Lire a
factoriel ← factoriel * i max ← a
FIN POUR pmax ← 1
Ecrire “Le factoriel de ” & valeur & “ est : ” POUR i = 2 A 20
& factoriel Ecrire « Entrez le nombre numéro » , i
Fin Lire a
SI a > max ALORS
max ← a
pmax ← i
FIN SI
FIN POUR
Ecrire « Le plus grand nombre est : » , max
Ecrire « Sa position est : » , pmax
FIN
ISMO Tétouan / [Link] 31
5. Le programme est :
Variables i , a , b , S : Entiers
DEBUT
Ecrire « Entrez un chiffre : »
Lire a
S←0
POUR i = 1 A 20
Ecrire « Entrez un nombre : »
Lire b
SI a = b ALORS
S←S+1
FIN SI
FIN POUR
Ecrire « Le nombre de fois de saisie de » , a , « est : » , S
FIN
ISMO Tétouan / [Link] 32
La structure TANT QUE :
Cette structure permet de répéter les instructions tant qu’une
condition est satisfaite. Sa syntaxe est :
TANT QUE condition
Instructions à répéter
FIN TANT QUE
condition c’est une condition qu’on appelle parfois condition d’arrêt.
Cette condition est testée avant la première exécution.
Cette structure diffère de la première par le fait qu’on va répéter des
instructions pour un nombre de fois inconnu au préalable.
ISMO Tétouan / [Link] 33
Reprenant toujours le programme de notre surveillant. S’il ne sait pas
combien de moyennes à calculer on ne pourra pas utiliser la structure POUR.
Dans ce cas on est obligé d’utiliser la structure TANT QUE.
Variables mat, phy, ang, fra, hg, moyenne : Réels
Variable reponse : Chaîne
DEBUT
reponse ← “o”
TANT QUE reponse = “o”
Ecrire “Entrez la note de math :”
Lire mat
Ecrire “Entrez la note de physique :”
Lire phy
Ecrire “Entrez la note de français :”
Lire fra
Ecrire “Entrez la note d’anglais :”
Lire ang
Ecrire “Entrez la note d’histoire-Géo :”
Lire hg
moyenne ← ((mat + phy) * 5 + fra * 4 + (ang + hg) * 2) / 18
Ecrire “La moyenne est : ”, moyenne
Ecrire “Voulez-vous continuer oui (o) /non (n) ?”
Lire reponse
FIN TANT QUE
FIN ISMO Tétouan / [Link] 34
1. Ecrire un algorithme qui demande à l’utilisateur un nombre compris entre 1
et 3 jusqu’à ce que la réponse convienne.
2. Ecrire un algorithme qui demande un nombre compris entre 10 et 20,
jusqu’à ce que la réponse
convienne. En cas de réponse supérieure à 20, on fera apparaître un message
: « Plus petit ! », et inversement, « Plus grand ! » si le nombre est inférieur à
10.
3. Ecrire un algorithme qui demande un nombre de départ, et qui ensuite
affiche les dix nombres suivants. Par exemple, si l'utilisateur entre le nombre
17, le programme affichera les nombres de 18 à 27.
4. Ecrire un algorithme qui demande successivement des nombres à
l’utilisateur, et qui lui dise ensuite quel était le plus grand parmi ces nombres
et quel était sa position. La saisie des nombres s’arrête lorsque l’utilisateur
entre un zéro.
5. Lire la suite des prix (en dhs entiers et terminée par zéro) des achats d’un
client. Calculer la somme qu’il doit, lire la somme qu’il paye, et déterminer le
reste à rendre.
ISMO Tétouan / [Link] 35
1. Le programme est :
Variable a : Réel
Début
Tant Que a < 1 OU a > 3
Ecrire « Veuillez Saisir une valeur comprise entre 1 et 3 »
Lire a
Fin Tant Que
Fin
2. Le programme est :
Variable a : Réel
Début
Lire a
Tant Que a < 10 OU a > 20
Si a < 10 Alors
Ecrire « Plus grand ! »
Sinon
Ecrire « Plus petit ! »
Fin Si
Lire a
Fin Tant Que
Fin ISMO Tétouan / [Link] 36
3. Le programme est :
4. Le programme est :
Variable a , i : Réel Variables i , a , max , pmax : Entiers
Début DEBUT
Ecrire « Entrez un nombre » Ecrire « Entrez le nombre numéro 1 »
Lire a Lire a
i←a+1 max ← a
Tant Que i < a + 10 pmax ← 1
Ecrire i i←1
i←i+1 TANT QUE a <> 0
Fin Tant Que i←i+1
Fin Ecrire « Entrez le nombre numéro » , i
Lire a
SI a > max ALORS
max ← a
pmax ← i
FIN SI
FIN TANT QUE
Ecrire « Le plus grand nombre est : » , max
Ecrire « Sa position est : » , pmax
FIN
ISMO Tétouan / [Link] 37
5. Le programme est :
Variables prixlu , mdu , mpaye , reste : Entiers
DEBUT
Ecrire « Entrez le prix »
Lire prixlu
mdu ← 0
mdu ← mdu + prixlu
TANT QUE prixlu <> 0
Ecrire « Entrez le prix »
Lire prixlu
mdu ← mdu + prixlu
FIN TANT QUE
Ecrire « Entrez le prix payé»
Lire mpaye
reste ← mpaye - mdu
Ecrire « Le reste est : » , reste
FIN
ISMO Tétouan / [Link] 38
La structure REPETER :
Cette structure sert à répéter des instructions jusqu’à ce qu’une condition soit
réalisée. Sa syntaxe est :
REPETER
Instructions à répéter
JUSQU'A condition
Exercices :
1. Ecrire un algorithme qui demande successivement des nombres à l’utilisateur, et qui calcule le nombre
de valeurs saisies. La saisie des nombres s’arrête lorsque l’utilisateur entre le caractère « n » ou « N ».
2. Ecrire un algorithme qui demande successivement des nombres à l’utilisateur, et qui calcule leur
moyenne. La saisie des nombres s’arrête lorsque l’utilisateur entre un zéro.
3. Modifiez l’algorithme de l’exercice 1, de façon qu’il nous renseigne sur le nombre des valeurs positives
et sur le nombre des valeurs négatives. Ne comptez pas les valeurs nuls.
4. Ecrire un algorithme qui lit les caractères saisies par l’utilisateur. A la fin ce programme nous affichera la
phrase saisie. La saisie des caractères s’arrête lorsqu’on tape point « . ». Pour l’utilisateur veut insérer un
espace il lui suffit de tapez sur 0.
ISMO Tétouan / [Link] 39
1. le programme est :
Variables a , compteur : Entiers
Variable reponse : Chaîne
DEBUT
compteur ← 0
REPETER 2. Le programme est :
Ecrire « Entrez un nombre : »
Lire a
Variables a , somme , moyenne , compteur : Entiers
compteur ← compteur + 1
DEBUT
Ecrire « Voulez-vous continuez Oui/Non ? »
Lire reponse compteur ← 0
JUSQU'A reponse = « N » ou reponse = « n » somme ← 0
Ecrire « Le nombre de valeurs saisies est : » , compteur REPETER
FIN Ecrire « Entrez un nombre : »
Lire a
compteur ← compteur + 1
somme ← somme + a
JUSQU'A a = 0
Moyenne ← somme / compteur
Ecrire « La moyenne de valeurs saisies est : » ,
moyenne
FIN
ISMO Tétouan / [Link] 40
3. le programme est :
Variables a , npos , nneg : Entiers
Variable reponse : Chaîne
DEBUT
npos ← 0
nneg ← 0
4. Le programme est :
REPETER
Ecrire « Entrez un nombre : »
Variables caractere , phrase : Chaînes
Lire a
DEBUT
SI a > 0 ALORS
phrase ← « »
npos ← npos + 1
REPETER
SINON
Ecrire « Entrez une caractère : »
SI a < 0 ALORS
Lire caractère
nneg ← nneg + 1
SI caractere = « 0 » ALORS
FIN SI
caractere ← « »
FIN SI
FIN SI
Ecrire « Voulez-vous continuez Oui/Non ? »
phrase ← phrase +caractere
Lire reponse
JUSQU'A caractere = « . »
JUSQU'A reponse = « O » ou reponse = « o »
Ecrire « La phrase résultante est : » , phrase
Ecrire « Le nombre de valeurs positives saisies est :
FIN
» , npos
Ecrire « Le nombre de valeurs négatives saisies est
: » , nneg
ISMO Tétouan / [Link] 41
FIN
ISMO Tétouan / [Link] 42
il est possible de décomposer le programme qui résout un problème
en des sous-programmes afin d’améliorer la conception du
programme et ainsi sa lisibilité.
Il existe deux types de sous-programmes les fonctions et les
procédures. Un sous-programme est obligatoirement caractérisé par
un nom (un identifiant) unique.
Le nom d’un sous-programme comme le nom d’une variable doit :
➢ Contenir que des lettres et des chiffres
➢ Commencer obligatoirement par une lettre
Un sous-programme ainsi doit suivre la structure suivante :
Définition des constantes
Définition des types
Déclaration des variables
Définition des sous- programmes
DEBUT
Instructions du programme
FIN
ISMO Tétouan / [Link] 43
Une fonction est un sous-programme qui retourne un seul résultat.
Pour définir une fonction on utilise
Syntaxe :
FONCTION nom_fonction (Argument1 : Type , Argument2 : Type ,….) : Type
Déclarations
DEBUT
Instructions de la fonction
nom_fonction ← Valeur renvoyée
FIN
Un argument (appelé paramètre formel) d’un sous- programme est
une variable locale particulière qui est associée à une variable ou
constante du programme appelant.
ISMO Tétouan / [Link] 44
Les arguments d’une fonction sont en nombre fixe (≥ 0).
Une fonction possède un seul type, qui est le type de la valeur
retournée qui est affecté au nom de la fonction.
Une fois la fonction définie, il est possible (en fonction des besoins) à
tout endroit du programme appelant de faire appel à elle en utilisant
simplement son nom suivi des arguments entre parenthèses.
Dans le programme appelant ces arguments sont appelés paramètres
effectifs.
La valeur ainsi renvoyée par la fonction peut être utilisée dans
n’importante quelle expression compatible avec son type.
Exemple :
FONCTION Calcul (x : Réel , y : Réel) : Réel
Variable S : Réel
DEBUT
S←x+y
Calcul ← S
ISMO Tétouan / [Link] 45
FIN
Les arguments d’une fonction sont en nombre fixe (≥ 0).
Une fonction possède un seul type, qui est le type de la valeur
retournée qui est affecté au nom de la fonction.
Une fois la fonction définie, il est possible (en fonction des besoins) à
tout endroit du programme appelant de faire appel à elle en utilisant
simplement son nom suivi des arguments entre parenthèses.
Dans le programme appelant ces arguments sont appelés paramètres
effectifs.
La valeur ainsi renvoyée par la fonction peut être utilisée dans
n’importante quelle expression compatible avec son type.
ISMO Tétouan / [Link] 46
Exemple :
FONCTION Calcul (x : Réel , y : Réel) : Réel
Variable S : Réel
DEBUT
S←x+y
Calcul ← S
FIN
Variables i , j , a , b, S1, S2 : Réels
DEBUT
Lire i
Lire j
Lire a
Lire b
S1 ← Calcul (i , j )
Ecrire S1
S2 ← Calcul (a , b )
Ecrire S2
FIN
ISMO Tétouan / [Link] 47
1. Définir la fonction « Absolue » qui renvoie la valeur absolue d’une
valeur qu’on lui passe comme paramètre.
2. Définir la fonction « Inverse » qui renvoie l’inverse d’une valeur
qu’on lui passe comme paramètre.
3. Définir la fonction « Max » qui renvoie le maximum de deux
valeurs.
4. Écrire une fonction qui retourne xy
5. Écrire une fonction qui calcule le montant d'intérêt annuel à
payer, le capital et le taux d'intérêt étant passé comme
paramètres.
ISMO Tétouan / [Link] 48