البرمجة الإجرائية
البرمجة الإجرائية
البرمجة الإجرائية
Procedural Programming
وجد هناك العديد والعديد من لغاِت البرمجة المختلفة التي تشترك فيما بينها بخواٍص وميزاٍت
عدٍة ،وال يزال إنشاء الكثير منها مستمًر ا كل عاٍم .ولكن تبقى لغة باسكال هي الخطوة األولى
لتعلم أي لغة ،وهي تستخدم على نطاٍق واسٍع كلغٍة للتعليم الجامعي ،كونها لغة برمجة سهلة
للغاية وتساعدك على فهم أساسيات عالم البرمجة .وهذا ساعد المبرمجين المبتدئين على
تعريفهم بلغاٍت أخرى مثل C ، C ++ ، Javaأو # Cإًذا فهي عتبة لغات البرمجة عالية المستوى
األخرى.
النمطية .1
الدوال المعرفة مسبًقا .2
تصميم البرنامج من أعلى ألسفل .3
تمرير المعامالت parameters .4
المتغيرات العامة .5
المتغيرات المحلية .6
structure d'un langage pascal
Un programme Pascal est composé d'une entête, des déclarations et des
instructions (délimitées par BEGIN et END).
PROGRAM cercle (input,output);
(* entête *) VAR perimetre, diametre : REAL ;
(* déclarations *) BEGIN readln(diametre);
(* instruction *) perimetre := 3 .
Exemple :
Algorithme Moyen;
Var n:entier;
Debut ;
Ecrire(‘donnez votre
chiffre entre 0et 3’) ;
Lire(n) ;
Cas n vaut
0 :Ecrire(‘zero’) ;
1 :Ecrire(‘Un’)
2 :Ecrire(‘Deux’)
;
# initialisation liste2
liste2 <- [ ]
# boucle de lecture liste2
Entrer ( n )
tantque ( n ≠ 0 )
liste2 <- liste2 + [ n ]
Entrer ( n )
fin_tantque
Exercice 8. Suppres
Un enregistrement
est un type de données défini par
l’utilisateur
et qui permet
degrouper un nombre fini d’éléments (ou champs) de types
éventuellement différents
Déclaration
d’une structure enregistrement
Puisque l'enregistrement est un nouveau type, on commence par sa déclaration
Déclaration:
TypeFiche
=enregistrement nom, prénom : Chaînesexe : Caractèrenuméro :
Entier non signémoyenne : Réelnum_cin: Entier long
Fin Fiche Variable élève: fiche
12 8 6 15 2 -1
CORRIGES
DVD-MIAGE Corrigés
Algorithmique Exercices ch. 6 Page 3/15 03-*-Saisie et affichage de
notes 3 Algorithme SaisieAffichageNotes2 /* Déclarations */
Constantes MAX_NB_NOTES = 50 /* le nombre maximal de notes */
MIN = 0 /* borne inférieure des notes */ MAX = 20 /* borne
supérieure des notes */ Variables nbNotes : entier /* nombre de
notes à saisir */ notes : tableau[1..MAX_NB_NOTES] de réel /* les
notes */ i : entier /* indice */ reponse : chaine /* réponse oui/non */
max : réel /* note maximale */ min : réel /* note minimale */ moy :
réel /* moyenne des notes */ /* Instructions */ Début min MAX max
MIN moy 0 reponse "oui" i 0 écrire("Saisie des notes") tantque
reponse = "oui" et i < MAX_NB_NOTES i i + 1 écrire ("note numéro ",
i) lire(notes[i]) /* Détermination du min et du max */ si notes[i] >
max alors max notes[i] sinon si notes[i] < min alors min notes[i] finsi
finsi /* Cumul pour le calcul de la moyenne */ moy moy + notes[i] /*
Saisie de la réponse */ écrire ("encore une note ? (oui/non) ")
lire(reponse) fintantque nbNotes i moy moy / nbNotes
écrire("Affichage des notes") pour i de nbNotes à 1 par pas de -1
écrire ("note numéro ", i, " : ", notes[i]) finpour écrire("note
minimale : ", min) écrire("note maximale : ", max) écrire("moyenne :
", moy) Fin DVD-MIAGE Corrigés Algorithmique Exercices ch. 6 Page
4/15 04-*-Affichage d'un tableau de notes avec une valeur sentinelle
Algorithme AffichageTableauValeurSentinelle /* Déclarations */
Constantes TAILLE = 10 /* la taille du tableau */ SENTINELLE = -1 /*
valeur sentinelle */ Variables notes : tableau[1..MAX_NB_NOTES] de
réel = {12, 8, 16, 5, -1,,,,,} /* les notes */ i : entier /* indice */ /*
Instructions */ Début i 1 écrire("[") tantque notes[i] <> SENTINELLE
et i <= TAILLE écrire (notes[i], ", ") i i + 1 fintantque écrire("]") Fin