university Akli Mohand Oulhadj Of Bouira
Faculty of sciences and technology
Department of mechanical
engineering
Computer structure and application
Presented by:
TRAD.N
Algorithm and program concepts Chapter II
Algorithm and program concepts
Algorithm and program concepts Chapter II
I. Introduction.
La programmation informatique est une démarche qui se présente en deux phases :
• Primo, l’analyse du problème, c.à.d. l’écriture de l’algorithme ;
• Secundo, la programmation, qui consiste à exprimer le résultat de la première
phase dans un langage donné.
(Computer programming is a process that occurs in two phases:
• First, the analysis of the problem, (writing the algorithm);
• Second, programming consists of expressing the result of the first phase in a given
language)
Algorithm and program concepts Chapter II
I. Algorithm
[Link] of algorithm
Définition (1): Un algorithme est une séquence d'instructions ou de règles bien
définies, ordonnées et non ambiguës, conçues pour effectuer une tâche ou résoudre un
problème spécifique. Les algorithmes sont utilisés pour décrire la logique nécessaire à
l'exécution d'une opération donnée.
Definition (1): An algorithm is a sequence of well-defined, ordered, and
unambiguous instructions or rules designed to perform a task or solve a specific problem.
Algorithms are used to describe the logic required to perform a given operation.
Définition (2): Un algorithme est la description de la méthode de la résolution d'un
problème quelconque en utilisent des instructions élémentaires.
Definition (2): An algorithm is the description of the method for solving any problem
by using elementary instructions.
[Link] démarche et analyse d'un problème :
Comme vu précédament, un algorithme représente une solution à un problème donné
.Pour atteindre à cette solution algorithmique un processus d'analyse et de résolution sera a
ppliqué. Ce processus est constitué des étapes suivantes :
Algorithm and program concepts Chapter II
[Link] de données :
L’algorithme suit les étapes suivantes :
Saisir les données déterminées d’une manière très précise nécessaires
pour la résolution un problème donné.
Le traitement de données saisis pour résoudre le problème(résolution
étape par étape).
L’affichage des résultats obtenus après le traitement
Exemple :
Considérons le traitement qui consiste à calculer la moyenne d’un groupe d’étudiants pour un
module donné
Dans ce cas:
1- Pour effectuer le calcul de la moyenne, on a besoin de la note de chaque étudiant dans le module en
question ;
2- Ensuite, on effectue le calcul comme suit :
• On calcule la somme des notes,
• On divise par le nombre d’étudiants,
3) Enfin, on affiche le résultat (la moyenne).
Algorithm and program concepts Chapter II
I.4. Structure d’algorithme
La structure est organisée sous la forme :
Nom : le nom de l’algorithme
Variable : déclaration des variables
Début
Instruction 1
Instruction2
. . ..
Instruction N
Fin
Algorithm and program concepts Chapter II
An algorithm is composed of three main parts
1. Header (en tete ):This part is used to give the algorithm a name. It is preceded by the word
Algorithm.( L’en-tête : Cette partie sert a donner un nom a l'algorithme. Elle est précédée par le mot
Algorithm.)
[Link]: In this section, we declare the various objects used by the algorithm (variables,
constants, functions, etc....).( Déclaration : Dans cette partis , on déclare les différents objets que
l'algorithme utilise ( variables, constantes, fonctions ,etc….)
[Link] body (corps d’algorithme) :This part contains the algorithm instructions, delimited
by the words begin and End(Le corps de l’algorithme : Cette partie contient les instructions de
l'algorithme .Elle est délimitée par les mots Début et Fin)
[Link] de base en algorithme
Basic algorithmic notions
Quatre notions de base en algorithmique vont être étudiées, à savoir :
1. La notion de variables et de constantes.
2. La notion d’affectation.
3. La notion de lecture.
4. La notion d’écriture.
Four basic algorithmic notions will be studied, namely :
1. The notion of variables and constants.
2. The notion of assignment.
3. The notion of reading.
4. The notion of writing.
Algorithm and program concepts Chapter II
1.5.1. Variables:
A variable is a memory cell designed to hold values of a predefined type (numbers,
characters, strings, etc.).
It has •A name
•A type
•A content: which can be modified during execution of the algorithm.
The key word is: Var.
Les variables :Une variable est une case mémoire destiné à contenir des valeurs de
type défini au préalable (nombres, caractères, chaînes de caractères, booleen…).
Elle possède •Un nom
•Un type
•Un contenu: qui peut être modifié au cours de l’exécution de l’algorithme.
Le mot clé est: Var.
[Link] .Declaring a variable :
In the declaration section, you must list all the variables you will need in the course of the
algorithm. Each declaration must include the variable name (identifier) and its Type.
A. Identifier: this is the name of the variable, made up of letters and numbers with no spaces.
B. Type: defines the nature of the variable (integer, real, character, character string,booleen etc.).
[Link] type: a numeric type representing all natural and relative integers, such as : 0, 45, -
10,... Key word: integer.
[Link] type: another numeric type that represents real numbers, such as: 0.5, - 3.67, 1.5e+5 ,...
Key word : real.
Algorithm and program concepts Chapter II
[Link] type: represents all alphanumeric characters such as:′a′ , ′B′ , ′*′ , ′9′ , ′@′ , ′ ′,...
Key word: car.
[Link] type: concerns strings of characters such as words or phrases: ″informatics″ , ″the B
section″ ,.... Key word: stringe.
[Link] type: this type can take only two states: true or false. Key word: boolean .
Déclaration d’une variable : Dans la partie déclaration on doit énumérer toutes les
variables dont on aura besoin au cours de l’algorithme. Chaque déclaration doit comporter
le nom de la variable (identificateur) et son type.
A.L’identificateur : c’est le nom de la variable ,il est composé de lettres et de chiffres
sans espaces.
B. Le type : il définit la nature de la variable (entier, réel, caractère, chaine de caractère
booleen...)
Type entier : un type numérique qui représente l’ensemble des entiers naturels et
relatifs, tels que : 0, 45, -10,… Mot clé : entier
Type réel : un autre type numérique qui représente les nombres réels, tels que : 0.5, -
3.67, 1.5e+5 ,… Mot clé : réel
Type caractère : représente tous les caractères alphanumériques tels que : ′a′, ′B′, ′*′,
′9′, ′@′, ′ ′,… Mot clé : car
Type chaînes de caractères : concerne des chaines de caractères tels que des mots ou
des phrases : ″informatique″, ″la section B″,… Mot clé : chaîne e) Type booléen : ce
type ne peut prendre que deux états : vrai ou faux Mot clé : booléen
Algorithm and program concepts Chapter II
Syntaxe:
Variable identificateur :type
1.5.2 Constant : It represents numbers, characters, strings, etc. whose value cannot be
modified during algorithm execution.
Key word : const.
Les constantes Elle représente des nombres, des caractères, des chaînes de caractères,…
dont la valeur ne peut pas être modifiée au cours de l’exécution de l’algorithme. Mot clé :
const.
Example:
const pi=3,14.
[Link]
An operator is a sign that can link two values to produce a result. An operator depends on
the type of values it links.
(Opérateurs Un opérateur est un signe qui peut relier deux valeurs pour produire un
résultat. Un opérateur dépend du type des valeurs qu’il relie.)
Algorithm and program concepts Chapter II
[Link].Arithmetic operators (numerical): (Opérateurs arithmétiques (numériques))
Algorithm and program concepts Chapter II
[Link].Comparison operators: (Opérateurs de comparaison)
Algorithm and program concepts Chapter II
[Link].Opérateurs logiques (booléens):
Algorithm and program concepts Chapter II
I.6. Algorithmic structures:
An algorithm is made up of three basic building blocks:
Sequencing: A series of onstructions executed in order.
Selection(or condition):The use of conditiona statement (like “if” statements in programming),
Iteration: (or loop) the repetition of a blok of instructions as long as condition is true (while ,for
)
Un algorithme est composé de trois éléments de base :
Séquence : Une série d'instructions exécutées dans l'ordre.
Sélection (ou condition) : L'utilisation de déclarations conditionnelles (comme les instructions "if"
en programmation) pour prendre des décisions.
Répétition (ou boucle) : La répétition d'un bloc d'instructions tant qu'une condition est vraie
(boucle "while") ou jusqu'à ce qu'une condition soit vraie (boucle "do-while" ou "for").
[Link]
Basic operations:
An operation (instruction) is an elementary action commanding the machine to perform a
calculation, or to communicate with one of its input or output peripherals.
(Une opération (instruction) est une action élémentaire commandant à la machine un calcul , ou
une communication avec l’un de ses périphériques d’entrées ou de sorties) .
Algorithm and program concepts Chapter II
Les opérations de base sont:
[Link] ( ← ): Assigns a value to a variable or the result of a calculation operation.( L’affectation
(← ): L’affectation permet d’affecter une valeur à une variable ou le résultat d’une opération de calcul
.Elle est symbolisée en algorithme par (← )
Syntax :
Variable ← expression
Expression peut être soit :
Identificateur (a,b,x,y…….)
Constante (Pi=3,14,…..)
Expression arithmétique (a+b)
Expression logique (A or B)
Exemple: donner le résultat de chaque opération
A4;
B8 ;
N A+B ;
[Link] (Input instructions) An input instruction allows the machine to read data entered by the
user from the keyboard . The value assigned must be of the same type as the variable (Lecture
(Instructions d’entrée) Une instruction d’entrée permet à la machine de lire une donnée saisie par
l’utilisateur à partir du clavier. La valeur attribuée doit être de même type que la variable)
Algorithm and program concepts Chapter II
Example:
Début
Lire (a);
Lire (x,y,z);
Fin.
[Link] (Output instructions) :An output instruction displays the processing result on the
screen (Écriture (Instructions de sortie) Une instruction de sortie permet l’affichage sur l’écran du
résultat de traitement )
Example de lecture et d’écriture :
Algorithme produit ;
Var x,y,z : entier ;
Début
Ecrire (‘Donnez valeur de x :’);
Lire (x )
Ecrire (‘Donnez valeur de y :’);
Lire (y );
z←x*y
Ecrire (‘la valeur du produit est=‘ ,z) ;
Fin .
Algorithm and program concepts Chapter II
[Link] : This is a text that clarifies or explains a program. It simply helps to better understand
the [Link] write a comment,simply add %.
( Les commentaires : C’est un texte qui apporte des précisions ou des explications dans un programme.
ça aide simplement à mieux comprendre le programme) pour ecrire un commentaire ,il suffit d’ajouter
%.
Exepmle : Consider a rectangle ABCD, Write an algorithm to calculate the area and perimeter of this
rectangle.
( Soit un rectangle ABCD, Écrire l’Algorithme qui permet de calculer la surface et le périmètre de ce
rectangle.)
Solution :
1. without comment :
Algorithm and program concepts Chapter II
Algorithme rectangle ;
Variables: x, y , s , p: réel;
Debut
Écrire ('Donner la longueur du rectangle: ');
Lire (x); Écrire ('Donner la largeur du rectangle: ');
Lire (y);
S ← x*y;
Écrire ('La surface du rectangle est: ', s);
P ← (x+y)*2;
Écrire ('Le périmètre du rectangle est: ',p );
Fin
[Link] comment :
Algorithme rectangle ; % algorithme qui calcule la surface et le périmètre d’un rectangle%
Variables: x, y , s , p: réel; % x :langeur, y:largeur, p:périmètre s :surface%
Debut
Écrire ('Donner la longueur du rectangle: ');
Lire (x); Écrire ('Donner la largeur du rectangle: ');
Lire (y);
S ← x*y; %calculer la surface%
Écrire ('La surface du rectangle est: ', s);
P ← (x+y)*2; %calculer le périmètre%
Écrire ('Le périmètre du rectangle est: ',p );
Fin
Algorithm and program concepts Chapter II
[Link](or condition):
Conditional or choice structures (Structures conditionnelles ou de choix)
conditional structures.: Conditional structures are instructions that allow you to test whether a
condition is true or not.
The conditional control structure allows a program to modify its processing according to a condition.
There are three types of conditional instructions:
Simple form
Generalized (nested or embedded ) form
Choice form
I.6.2.1. Simple conditional control structure:It is distinguished by two forms: reduced and alternating .
[Link] reduced form: A conditional control structure is called reduced simple form when processing
depends on a condition. If the condition evaluates to "true", processing is executed.
Vocabulary and syntax : Si condition alors
Instructions ;
finsi
Algorithm and program concepts Chapter II
[Link] alternative form : a. Definition: A conditional control structure is considered an alternative form
when processing depends on a condition with two states: if the condition is evaluated as "true", the first
process is executed; if the condition is evaluated as "false", the second process is executed. b.
Vocabulary and syntax
Si condition alors
Instruction 1 ;
Sinon
Instruction 2 ;
finsi
I.6.2.2. The generalized conditional control structure (Structure alternatif imbriquée) :A conditional
control structure is said to be generalised when it can solve problems involving more than two processes
depending on the conditions. Execution of one process automatically causes the other processes not to be
executed.
Vocabulary and syntax :
Algorithm and program concepts Chapter II
The generalized conditional control structure
Si condition1 alors
Instruction1
Sinon
Si condition2 alors
Instruction2
Sinon
Si condition3 alors
Instruction 3 ;
Sinon
…….
Si condition n-1 alors
Instruction n ;
Finsi
Finsi
Finsi
Finsi
Algorithm and program concepts Chapter II
[Link] conditional choice control structure: A conditional control structure is said to be
choice when the processing depends on the value that a selector will take. This selector is of
integer, character or boolean type
Vocabulary and syntax :
Cas variable vaut
valeur1 :instruction 1
valeur2 : instruction 2
………………………
Valeur n :instruction n
Sinon autre instruction
Fin cas
Algorithm and program concepts Chapter II
Exemple:
[Link] conditional imbriqué:indiquer l’état de l’eau vapeur gaz ou liquide
Algorithme Etat _d’eau
Variables
Temp : entier
A, B : booléen
Début
Ecrire( "Entrez la température de l’eau :")
Lire (Temp )
A ← Temp =< 0
B← Temp < 100
Si A Alors
Ecrire ("Etat solide")
Sinon
Si B Alors
Ecrire (" Etat liquide" )
Sinon
Ecrire ("Etat gazeux")
Finsi
Finsi
Fin
Algorithm and program concepts Chapter II
2. Condition choix multiples : Soit une variable Numéro comprise entre 1 et 7. En fonction de la valeur
de cette variable on peut écrire le jour de semaine correspondant :
Algorithme jour
Variable
Num : entier
Début
Ecrire ("Donner le numéro du jour :" )
Lire( Num)
cas Num vaut
"1 ": (Ecrire ("C’est le Dimanche")
"2 ": (Ecrire ("C’est le Lundi" )
"3" : (Ecrire "C’est le Mardi" )
"4 ": ( Ecrire "C’est le Mercredi" )
"5" : (Ecrire "C’est le Jeudi" )
"6" : ( Ecrire "C’est le Vendredi" )
"7" : (Ecrire "C’est le Samedi" )
sinon
Ecrire ("Le numéro n’est pas comprise entre 1 et 7 !" ;
Finscas
Fin