Algorithmiques et programmation en langage PASCAL
Post on 24-Oct-2021
17 Views
Preview:
Transcript
UNIVERSITÉ KASDI MERBAH OUARGLA
Faculté des Sciences Appliquées
Département : Tronc commun
Algorithmiques et programmation en langage PASCAL
الخوارزميات والبرمجة بلغة باسكال
Par : CHEBOUT Mohamed sedik Maitre-assistant A
Un algorithme1 est une suite finie et non ambiguë d’opérations ou d'instructions permettant de résoudre un problème ou d'obtenir un résultat.
Le mot algorithme vient du mot arabe الخوارزمي, nom du mathématicien du ixe siècle Al-
Khwârizmî. Le domaine qui étudie les algorithmes est appelé l'algorithmique. On retrouve aujourd'hui des algorithmes dans de nombreuses applications telles que le fonctionnement des ordinateurs , la cryptographie, le routage d'informations, la planification et l'utilisation optimale des ressources, le traitement d'images, le traitement de texte, la bio-informatique, etc.
1 Définition de WikiPédia : https://fr.wikipedia.org/wiki/Algorithme
SUPPORT DE COURS Adressé aux étudiants de : 1 année tronc commun sciences et techniques
Promotion : 2017/2018
RÉSUMÉ RÉSUMÉ
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 2
SOMMAIRE
II. Algorithme II.1. Définition 3
II.1.1. Propriété d’un algorithme : (خصائص الخوارزم) 3
II.2. Démarche pour résoudre un problème : )منهجية حل إشكال( 3
II.3. Langage de description d’un algorithme 5
II.4. Structure générale d’un algorithme (الهيكل العام للخوارزم) 5
II.4.1. Partie déclarations (قسم التصريحات) 6
II.4.1.1. Les variables : (المتغيرات) 6
II.4.1.2. Les constantes (الثوابت) 6
II.4.2. Le corps de l’algorithme (الجزء الأساسي للخوارزم) 7
II.4.2.1.1. Structure séquentielle : )الصيغة التسلسلية( 7
II.4.2.1.1.1. Opération d’affectation ) تعليمة الإسناد( 7
II.4.2.1.1.2. Incrémentation/décrémentation ) الإضافة والإنقاص( 8
II.4.2.1.1.3. Les opérations d’ENTREE/SORTIE ) تعليمات الإدخال
)والإخراج 8
II.4.2.1.2. Les instructions conditionnelles )التعليمات الشرطية( 8
II.4.2.1.3. Les Instruction répétitives (boucles) : (التعليمات التكرارية) 9
II.4.2.1.3.1. La boucle : « pour » 10
II.4.2.1.3.2. La boucle : « tant que » 10
II.4.2.1.3.3. Différence entre pour et tant que 11
II.4.3. Représentation d’un algorithme en organigramme ( تمثيل الخوارزم عن طريق
(الهيكل التنظيمي12
II.4.4. Trace d’exécution d’un algorithme : )أثر تنفيذ الخوارزم( 13
II.4.5. Opérateurs : )العاملات( 14
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 3
II. Algorithme II.1. Définition : : : :
Un algorithme (الخوارزم) est une suite finie et non-ambiguë d'instructions permettant de résoudre
un problème, le mot algorithme est dérivé du nom du mathématicien persan Al-Khawarizmi, le père de
l'algèbre.
Un problème algorithmique est souvent formulé comme la transformation ( حويلت )d'un ensemble
de valeurs, d'entrée (المدخلات), en un nouvel ensemble de valeurs, de sortie (المخرجات).
Exemples d'algorithmes :
� Une recette de cuisine (ingrédients → plat préparé)
� La recherche dans un dictionnaire (mot → définition)
� La division entière (deux entiers → leur quotient)
� Le tri d’une séquence (séquence → séquence ordonnée)
� … etc
Figure 1 : Fonctionnement d’un algorithme
II.1.1. Propriété d’un algorithme : ( الخوارزمخصائص )
� Un algorithme doit tenir compte de tous les cas possibles. Il traite le cas général et les cas
particuliers.
� Il contient toujours un nombre fini d'actions.
� Il est indépendant des langages de programmation et des matériels informatiques.
� Il répond, également, à la question : comment faire un travail sans la moindre ambiguïté ?
� L’écriture d’un algorithme est une tache de programmation à visée universelle.
Cependant, un programme (برنامج) est une série d’instructions qui réalise (implémente) un
algorithme dans un langage de programmation donné sur une machine (ordinateur, super calculateur,
smartphone, … etc) bien déterminée.
II.2. Démarche pour résoudre un problème : )منهجية حل إشكال(
Un algorithme peut être spécifié de différentes manières :
� En langage naturel,
� Graphiquement,
Algorithme
(Traitement)
En المعالجةtr
és
Sort
ies
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 4
� En pseudo-code )برنامج شبيه( (combiner le langage naturel avec les mots clés d’un langage de
programmation),
� Par un programme écrit dans un langage de programmation informatique.
� ... etc
La seule condition est que la description soit précise, un algorithme n'est donc exécutable
directement par aucune machine, mais il a l'avantage d'être traduit facilement dans tous les langages de
programmation.
L’élaboration d’un algorithme précède l’étape de programmation, c’est une démarche de
résolution de problème exigeante :
� La rédaction d’un algorithme est un exercice de réflexion qui se fait sur papier.
� L'algorithme est indépendant du langage de programmation, par exemple, on utilisera le
même algorithme pour une implémentation en Java, ou bien en C++ ou en Visual Basic.
� L’algorithme est la résolution brute d’un problème informatique.
Figure 2 : Etapes de résolution d’un problème.
Exemples concrets des algorithmes :
i. Problème : préparation d’un litre de glace,
Entrés :
1. ½ litre de lait
2. 6 œufs
3. 200 grammes de sucre glacé
4. 2 cuillères à café de café soluble
Traitement :
1. Faire bouillir le lait,
2. Battre les jaunes d’œufs avec le sucre,
Problème
(Énoncé précis)
Analyse
Implémentation
(Codage)
Algorithme
Programme
Résultats
Dans un langage de
programmation
PASCAL, C, JAVA,
… etc
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 5
3. Verser dessus le lait bouillant en remuant avec une spatule,
Sortie :
Un litre de glace préparé.
ii. Problème : Trouver la liste des diviseurs d'un nombre
Entrés : Soit N un nombre entier.
Traitement : 1. On génère des diviseurs i à partir de 1 jusqu’à N / 2
2. Pour chaque diviseur généré, on divise N par i.
3. On regarde le reste de la division s’il est égal à 0, alors i est un diviseur et il faudra
donc l’afficher.
4. Pour générer les diviseurs i on rajoute 1 à chaque fois à i qui vaut 1 au départ.
Sorties : liste des diviseurs de N entre 1 et N/2.
II.3. Langage de description d’un algorithme ( الخوارزم لغة كتابة )
Un langage de description d’un algorithme (LDA) est l’ensemble de mots clés et de structures
(données et contrôles) permettant de décrire d’une manière rigoureuse et soigné (Indentation) assez
proche de celles des langages de programmation, dont l’objectif est de migrer facilement vers un langage
de programmation structuré (PASCAL, C, …) dans la phase de codage.
Remarque : en algorithmique on ne fait pas la différence entre majuscule et minuscule lors de
l’écriture d’un algorithme :
Exemple : les mots algorithme, ALGORITHME, Algorithme sont équivaux.
II.4. Structure générale d’un algorithme (الهيكل العام للخوارزم) Un algorithme est composé de trois parties fondamentales :
� L’en-tête : permet tout simplement d’identifier l’algorithme.
� Déclaration : liste de toutes les constantes et variables utilisées dans l’algorithme.
� Le corps : cette partie contient les ordres ou les tâches de l’algorithme.
Partie Entête Algorithme nom_de_Lagorithme ;
Partie déclaration Constantes : listes des constantes ; Variables : listes des variables ;
Début
Corps de l’algorithme
Instruction_1 ; Instruction_2 ; Instruction_3 ; … Instruction_n ;
Fin.
Le point-virgule ( ;) est une marque de terminaison pour
chaque instruction
Les mots : algorithme, constantes, variables,
début et fin sont des mots clés propre à LDA
La dernière instruction (Fin) se termine avec un
point
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 6
Exemple 2.1: l’algorithme suivant permet de calculer le carré d’un nombre entier entré par
l’utilisateur (Exercice1 de TPn°2) :
Algorithme Calcul_de_carre_dun_nombre ;
Variables a, c : entiers
Début
Ecrire(‘Entrer un nombre : ’) ;
Lire(a) ;
c = a*a ;
Ecrire(‘Le carée de : ’,a, ‘est :’, c) ;
Fin.
II.4.1. Partie déclarations (قسم التصريحات)
II.4.1.1. Les variables : (المتغيرات)
Une variable est un emplacement mémoire où est stockée une donnée sous forme d’octets.
L’identificateur de cette variable permet d’avoir accès à ces données sans être obligé de travailler sur
les octets.
Déclarer une variable, c’est réserver une certaine place mémoire adaptée au type de la variable et
lui associer un identificateur, la valeur que peut porter une variable peut être modifié durant
l’exécution du programme.
Comment déclarer les variables (Syntaxe (الصيغة)) ?
Variable nom_de_variable : Type ;
Variables nom_variables_1, nom_variable_2, …, nom_variable_n : Type ;
Où :
Nom_de_variable : est l’identificateur de la variable, il est composé par des chiffres et des
lettres, et ne commence pas par un chiffre et ne contient pas des espaces.
Type : Un type (de variable) détermine l’ensemble de valeurs possibles de la variable المتغيرطبيعة
déclarée pour designer la nature du contenu de la variable et les opérations pouvant être
effectuées sur celle-ci. Lorsqu’une variable est déclarée (association d’un identifiant et d’un
type) la place mémoire correspondante au type est réservée à l’identifiant de la variable.
Les variables peuvent être de différents types
Type de donnée Description
Entiers Les nombres entiers
Réels Les nombres réels
Caractère Une variable est déclarée caractère porte un et un seul caractère
Chaine de caractères Une variable chaine de caractère regroupe plusieurs caractères
Exemple 2.2: Variable a : entier;
Variables c1, moyenne : réels ;
Variable is_empty : booléen ;
II.4.1.2. Les constantes (الثوابت)
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 7
Une constante représente des nombres, des caractères, des chaines de caractères, … dont la valeur
ne peut pas être modifiée au cours de l’exécution de l’algorithme.
Comment déclarer une constante ?
Constante nom_de_la_constante = valeur ;
Constantes nom_constante_1 = valeur_1, nom_ constante _2 = valeur_2, …, nom_
constante _n = valeur_n ;
Exemple 2.3 :
II.4.2 Le corps de l’algorithme (الجزء الأساسي للخوارزم)
Le déroulement de tout algorithme peut se faire avec les 3 structures suivantes :
1. Séquentielle .suite d’instructions qui se succèdent (déroulement linéaire) : )متتالية(
2. Alternative .suivant le résultat d’un test on exécute une séquence ou une autre : )التناوب(
3. Répétitive une instruction (ou un bloc d’instruction) est répétée sous une : )التكرار(
certaine condition.
Remarque :
Si on veut mentionner nos remarques dans l’algorithme, on utilise la notion des
commentaires (التعليقات). Les commentaires ne sont pas considérés dans l’exécution.
La syntaxe d’un commentaire est la suivante :
(*je suis un commentaire*)
II.4.2.1 Structure séquentielle : )الصيغة التسلسلية(
Syntaxe : Début
Instruction_1 ; Instruction_2 ; Instruction_3 ; … Instruction_n ;
Fin.
On distingue parmi les types d’instructions : l’opération d’affectation.
II.4.2.1.1 Opération d’affectation ) تعليمة الإسناد(
L’instruction d’affectation, comme son nom l’indique, permet d’affecter une valeur à une variable
dont la syntaxe est la suivante :
Variable ���� Expression ;
L’affectation se faire toujours en deux temps :
1. Evaluation de l’expression,
2. Affectation du résultat de l’expression à la variable.
Exemple 2.4 :
Constante a = 5 ;
Constantes is_correct = false, car = ‘c’, …, b = 4.5 ;
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 8
a����5 ; (attribuer la valeur 5 à la variable a, a donc de type entier, et se lit : a reçoit 5)
b = 2+3/8 ; (b : variable réelle)
C= true or (5>8) (c : variable booléenne)
Str = ‘Bonjour’ + ‘tout le monde’ ; (str : variable chaine de caractère, concaténation de
deux chaines de caractères)
Remarque : Les variables et constantes utilisées dans l’expression plus l’identificateur doivent avoir le
même type.
II.4.2.1.2 Incrémentation/décrémentation ) الإضافة والإنقاص(
L’incrémentation est l'opération qui consiste à ajouter 1 (ou une valeur entière) à une variable.
L'opération inverse, la décrémentation, consiste à retirer 1 (ou une valeur entière) à une variable, cette
opération est très courante dans les boucles :
Exemple :
• L’instruction suivante permet d’ajouter 1 à la valeur de x : x � x+1 ; et se lit : la nouvelle
valeur de x égale l’ancienne plus 1, et le 1 dans ce cas s’appelle le pas d’incrémentation
) خطوة الإضافة قيمة(
• A � a+3 : incrémentation avec un pas égale à 3.
• L’instruction suivante permet de retirer 2 de la valeur de c : c � c-2 ; le 2 dans ce cas
s’appelle le pas de décrémentation ) خطوة الإنقاص قيمة( .
II.4.2.1.3 Les opérations d’ENTREE/SORTIE )تعليمات الإدخال والإخراج(
Un algorithme peut avoir des interactions avec l’utilisateur, Il peut afficher un résultat comme il
peut demander à l’utilisateur de saisir une information afin de la stocker dans une variable.
En informatique, on raisonne en se mettant “à la place de la machine”, donc :
II.4.2.1.3.1 Instruction de lecture (entrée) :
L'instruction de prise de données sur le périphérique d'entrée (en général le clavier)
Lire(variable) ; Lire(variable1, variable2, …) ;
Exemple 2.5:
Lire(a) ; Lire(a, b, c) ;
II.4.2.1.3.2 Instruction d’écriture (Sortie) :
L'instruction d’affichage des résultats sur le périphérique de sortie (en général l'écran)
écrire(variable) ; écrire(variable1, variable2, …) ;
Exemple 2.6:
écrire(a) ; écrire(5) ;
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 9
écrire(‘je suis Informaticien’) ; écrire(‘La somme est :’, som) ;
II.4.2.2 Les instructions conditionnelles )التعليمات الشرطية(
Les instructions conditionnelles choisissent ou annulent l’exécution d’une instruction ou bloc
d’instruction selon une condition bien définie. On en distingue trois types :
1. Alternative simple (التناوب البسيط),
2. Alternative composée et )المركبالتناوب (
3. Alternative multiple )التناوب المتعدد( .
Instruction
conditionnelle Syntaxe Exemples
Notation Graphique
(organigramme)
Alt
ern
ati
ve
sim
ple
Si condition alors
Instruction ;
Si a>0 alors
Ecrire(a, ‘est positif’) ;
Description : L’exécution de L’instruction dépend de la condition si la condition est vrai on exécute sinon ‘instruction’ ne s’exécutera jamais
Alt
ern
ati
ve
com
po
sée
Si condition alors
Instruction_1
Sinon
Instructions_2 ;
Si a MOD 2 = 0 alors
Ecrire (a, ‘est paire’)
Sinon
Ecrire(a, ‘est impaire’) ;
Description : Une et une seule instruction sera exécutée, de manière alternative, en fonction de la condition. ���� Attention, on ne doit pas mettre un point-virgule ( ;) avant sinon
Alt
ern
ati
f m
ult
iple
choix variable de valeur_1 : instruction_1 ;
valeur_2 : instruction_2 ;
…
Valeur_n : instruction_n ;
sinon instruction_n+1 ;
Choix a de
1 : écrire(‘samedi’) ;
2 : écrire(‘Dimanche’) ;
3 : écrire(‘Lundi’) ;
4 : écrire(‘Mardi’) ;
5 : écrire(‘Mercredi’) ;
6 : écrire(‘Jeudi’) ;
7 : écrire(‘vendredi’) ;
Sinon
Ecrire(‘le nombre doit être
compris entre 1 et 7’) ;
Description : Une et une seule instruction sera exécutée selon la valeur de la variable employée comme condition.
Instruction
Oui
Suite …
Non Condition
Instruction_1
Oui
Suite …
Non Condition
Instruction_2
Instruction_1
Oui
Instruction_n
Oui
Condition
Instruction_2
Condition
Condition Oui
Instruction_n+1
Suite …
Non
Non
Non
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 10
II.4.2.2.1 Les Instruction répétitives (boucles) : (التعليمات التكرارية)
Le principe des boucles, ou traitement itératif, consiste à répéter une instruction ou un bloc
d’instruction un certain nombre de fois.
Il y a principalement deux types de boucles :
� Les boucles pour répéter une instruction un certain nombre de fois, il s’agit de la boucle
Pour,
� Les boucles pour répéter une instruction jusqu’à une condition d’arrêt, il s’agit des boucles
Tant que.
Le passage dans une boucle est appelé itération ) تكرار(
II.4.2.2.1.1 La boucle : « pour »
La boucle pour permet de répéter une instruction ou une bloc d’instruction un nombre donné de
fois. Elle se caractérise par le fait que l’on connait à l’avance le nombre d’itérations que l’on va devoir
effectuer.
Syntaxe :
Pour compteur � valeur_initiale jusqu’à valeur_finale
faire
Instruction_1 ;
Finpour Instruction_2 ;
Exemple 2.10 : On veut afficher les 10 premiers nombre positifs, on suppose que i est une variable
entière déjà déclarée.
Pour i � 1 jusqu’à 10 faire
Ecrire(i) ;
Finpour
Résultat :
1
2
3
4
5
6
7
8
9
10
II.4.2.2.1.2 La boucle : « tant que »
Compteur � valeur_initiale
Compteur <=
Valeur_finale
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 11
Les boucles tant que permettent d’effectuer des itérations tant qu’une certaine condition est
vérifiée. On ne connait pas le nombre d’itérations à effectuer, mais à chaque itération, on vérifie si la
condition est vraie ou fausse. Dès que cette condition est fausse, on sort de la boucle.
Syntaxe :
Tant que condition faire
Instruction_1 ;
Fin tant que
Instruction_2 ;
Exemple 2.11:
compteur � 1 ; (*initialisation *)
Tant que (compteur < =7) faire
Ecrire (‘Bonjour les informaticiens !’) ;
compteur � compteur+1 ; (*Incrémentation *)
Fin Tant Que
Résultat :
Bonjour les informaticiens !
Bonjour les informaticiens !
Bonjour les informaticiens !
Bonjour les informaticiens !
Bonjour les informaticiens !
Bonjour les informaticiens !
Bonjour les informaticiens !
Comment ça marche exactement ?
1. Au départ, on a une variable compteur initialisée à 1,
2. On va tester la variable compteur par rapport à 7 (compteur < =7), Comme compteur vaut 0 au
départ, on rentre dans la boucle.
3. On affiche la phrase : ‘Bonjour les informaticiens !’, grâce à : écrire (‘Bonjour les informaticiens !’)
4. On incrémente la valeur de la variable compteur grâce à : compteur ���� compteur + 1, compteur valait 0, elle vaut maintenant 1.
5. On arrive à la fin de la boucle (Fin tant Que) : on repart donc au début, au niveau du tant que. On
refait le test (compteur < =7) : « Est-ce que compteur est toujours inférieure à 7 ? ». Si
oui, compteur vaut 1 ! Donc on recommence les instructions de la boucle.
Exemple 2.12 :
n � 0 ; (*initialisation*)
Tant que (n mod 21 <> 0) faire
n ← n+15 ;
Fin Tant Que
Cet algorithme va s’arrêter dès que n est un multiple de 21. A la sortie de l’algorithme, on possède
donc la propriété suivante : n multiple de 21. Or comme n est toujours multiple de 15, n’est donc le
premier nombre multiple de 15 qui est multiple de 21.
L’utilisation de la boucle ‘Tant que’ est justifiée dans ce cas car on ne sait pas à l’avance, le nombre
d’itérations effectuées.
II.4.2.2.2 Différence entre pour et tant que
Voici un petit exemple pour mettre en évidence la différence entre la boucle pour et la boucle tant
que.
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 12
Supposons que vous vous trouviez en cours de sport et que le prof de sport, assis dans sa chaise
longue, vous demande d’effectuer des tours de stade. Il peut :
– Soit vous demander d’effectuer un certain nombre de tours de stade. L’algorithme de votre
comportement (التصرف) sera donc basé sur une boucle Pour. De plus, à chaque instant, vous
aurez conscience du (trop grand) nombre de tours qu’il vous reste à faire.
– Soit vous demander de courir jusqu’à que vous ne puissiez plus que ramper. La sortie du stade
dépend d’une condition : que vous soyez fatigué ou non. L’algorithme de votre comportement
sera donc basé sur une boucle Tant que (de la forme, tant que (je ne suis pas fatigué) faire
(je cours)). Vous ne saurez qu’une seule chose : lorsque vous arrêterez de courir (si vous ne
trichez pas), vous serez fatigué.
Critère Boucle pour Boucle tant que
Initialisation Automatique Nécessaire avant
d’entrer dans la boucle
Condition N’existe pas Obligatoire
Nombre d’itération Connu à priori N’est pas connu à priori
Déroulement Se termine une fois la
valeur de compteur > à
la valeur finale
Une fois la condition
n’est pas vérifiée
���� Quelle boucle choisir ? ( التعليمات التكرارية شرط الإختيار بين )
Le choix de la boucle à utiliser dans un problème se fait de la manière suivante.
� Si on connait le nombre d’itération à effectuer dans la boucle, on utilisera une boucle pour.
� Si la poursuite dans la boucle est dépendante d’une condition, on utilisera de préférence
une boucle Tant que.
La boucle (Tant que) est plus générale que la boucle pour. On peut traduire tous les programmes
avec des boucles pour en des programmes avec des boucles Tant que.
II.4.3 Représentation d’un algorithme en organigramme (تمثيل الخوارزم عن طريق الهيكل التنظيمي)
Un organigramme est une représentation graphique d’un algorithme, il permet de schématiser
graphiquement la solution d’un problème. Pour le construire, on emploie les symboles normalisés
suivants :
Symbole )الشكل( Désignation (التعريف)
Début ou fin de l’organigramme
Instruction ou groupe d’instructions
d’entrée/sortie
Instruction ou groupe d’instructions sur des
variables
Instruction conditionnelle
Oui Non
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 13
Sens conventionnel des liaisons : ( متفق عليهإتجاه التوصيلات ال )
Les différents symboles sont reliés entre eux par des lignes de liaisons (flèches)
Le sens des lignes de liaison doit être :
� De haut en bas.
� De gauche à droite.
Exemple 2.13:
Pour décider qu’une personne est obese ou non on utilise l’indice de masse corporel (IMC). On dit
qu’une personne est obese si l’IMC est supérieure à 30.
IMC = poids/taille2
(Par exemple : IMC = 55/ (1,65 x 1,65) = 20,2 si vous pesez 55 kilos et mesurez 1m65),
II.4.4 Trace d’exécution d’un algorithme : )أثر تنفيذ الخوارزم(
Une trace d’exécution d’un algorithme est une représentation manuelle du comportement de cet
algorithme sous forme d’un tableau dans le but de comprendre son fonctionnement.
Le titre des colonnes du tableau est le nom des variables de l'algorithme. Le titre des lignes est le
numéro des lignes de l'algorithme. Le contenu des cellules est la valeur des variables de l'algorithme.
Exemples 2.14: ci-dessous la trace d’exécution de l’exemple suivant :
N° Ligne Code
1
2
3
4
5
compteur � 1 ; (*initialisation *)
Tant que (compteur < =7) faire
Ecrire (‘Bonjour les informaticiens !’) ;
Compteur � compteur+1 ;
(*Incrémentation *)
Fin Tant Que
Début
Obtenir la taille
et le poids
IMC = poids/taille*taille
Fin
Ecrire(‘Vous êtes obese’)
Ecrire(‘Vous n’êtes pas obese’)
IMC >=30
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 14
Trace d’exécution :
Etapes compteur Condition (compteur<=7)
Sortie de la boucle Application résultat
1 1 1 <= 7 oui Bonjour les Informaticiens !
2 2 2 <= 7 oui Bonjour les Informaticiens !
3 3 3 <= 7 oui Bonjour les Informaticiens !
4 4 4 <= 7 oui Bonjour les Informaticiens !
5 5 5 <= 7 oui Bonjour les Informaticiens !
6 6 6 <= 7 oui Bonjour les Informaticiens !
7 7 7 <= 7 oui Bonjour les Informaticiens !
8 8 8 <= 7 Non -
9 Passage à l’instruction juste après la boucle tantque
II.5 Les opérateurs : )العاملات(
Opérateur Désignation Symbole Exemple
Opérateurs Arithmétiqu
es
Addition L’addition ordinaire + 5+7
Soustraction La soustraction ordinaire - 2-3
Multiplication La multiplication ordinaire * 4*6
Division La division euclidienne / 10/5
Modulo Le reste de la division Mod 10 mod 3
(donne 1)
Division Entière La partie entière du quotient Div 10 div 3
(donne 3)
Opérateurs prioritaires : *, /, div et mod.
Opérateurs secondaires : + et -.
Vous pouvez utiliser des parenthèses.
Opérateurs
Logiques
ET logique Donne TRUE si les deux
opérandes sont vrais AND
a b And
0 0 0
0 1 0
1 0 0
1 1 1
Ou logique
Donne TRUE si l’un de ces
opérandes est vrai, ou les deux
sont vrais
OR
a b OR
0 0 0
0 1 1
1 0 1
1 1 1
Négation
-
Not
a Not
0 1
1 0
Opérateur ultra-prioritaire : NOT.
Opérateur semi-prioritaire : AND.
Opérateurs non prioritaires : OR et XOR.
La relation d’ordre false<true est juste.
Opérateurs
relationnels
Supérieur ou égale - >= 8>=10
Supérieur Supérieur strictement > 5>2
Inférieur ou égale - < 1<100
Inférieur Inférieur strictement <= 2<=0
Chapitre 2 : Algorithmes : notions de base
Support de cours, Première version , Février 2017 | 15
Egalité - = A=A
Inégalité - <> 5<>2
Affectation Opérateur d’affectation Assigner une valeur à une
variable ���� A � 5
Priorité des opérateurs
� Niveau 1 : NOT. � Niveau 2 : *, /, mod, div, AND. � Niveau 3 : +, -, OR, XOR. � Niveau 4 : =, <, >, <=, >=, <>.
To be continued … ☺
PASCAL coming soon
top related