Algorithmes

 


Lorsqu'on a une tâche complexe à effectuer, il est nécessaire de la décomposer en étapes ou en opérations plus simples (et connues). La description de cette succession d'opérations qui permet d'aboutir au résultat recherché s'appelle un algorithme.

Définition de l'Association française de normalisation : "Ensembles des règles opératoires et de procédés définis en vue d'obtenir un résultat déterminé au moyen d'un nombre fini d'opérations".

Langages

1. Langages graphiques
1a. Organigrammes

Exemple: Algorithme de construction et mise en jeu d'un programme.(A gauche)

1b. Arbres algorithmiques - exemple ci-dessous.

2. Langages algorithmiques - Pascal

Les caractères utilisés Lettres -
A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_
Chiffres - 0,1,2,3,4,5,6,7,8,9
Caractères spéciaux - .,;:'[]{}()-+=*/<>^
Des mots réservés.

Avec les caractères on forme des identificateurs (noms) et des instructions (phrases). Chaque nom d'un objet est constitué d'un nombre arbitraire de lettres et chiffres, mais le premier caractère doit être une lettre.

Exemples: INTERET COMPTE A25 BASE_3_G UN_HOMME_TRISTE

Chaque objet a un ensemble de caractéristiques, qui sont:

  1. Un nom (identificateur)
  2. Un type, qui définit quelles sont les valeurs que l'objet peut contenir, leur intervalle et (qui est le plus important) les opérations qui sont permises pour la modification de ces valeurs.
  3. Une valeur
  4. Une adresse dans la mémoire.
  5. Un Genre
Le Pascal a 4 types prédéfinis: entier (integer), réel (real), booléen ou logique (boolean), caractère (char).

Les objets peuvent être des constantes ou des variables. La valeur d'une constante ne peut pas être changée au cours d'exécution du programme.

Structure générale d'un programme: (le tableau ci-dessous)
 
Titre Program <nom du programme> (nom1,nom2,...) ou les noms entre les parenthèses sont les noms des variables fichiers, lesquels le programme utilise. 

Partie de déclarations
LABEL <déclarations des étiquettes>

CONST < déclarations des constantes déclarées>
TYPE < déclarations des noms des types d'utilisateur>
VAR < déclarations des variables> 

Déclarations de procédures et fonctions. Chaque déclaration a la même structure que celle du programme principal. 
Begin
Partie des instructions exécutives <corps du programme - bloc des instructions exécutives 
End.

A n'importe quelle place dans le programme on peut écrire des commentaires entre accolades {}. Le commentaire est ignoré par le compilateur.

Déclaration des objets d'un type prédéfini

Le type entier (INTEGER)

Une constante manifestée est écrite par sa valeur décimale. Elle ne peut contenir que des chiffres décimaux avec ou sans un signe moins.

Exemples: 1000 -100 -2 5600

On peut déclarer un nom d'une constante et utiliser ce nom au lieu de la valeur. Le nom doit être déclaré dans le paragraphe CONST.

Exemples:
CONST
N = 10;
M = 100; NOMBRE = 150;

Les variables sont déclarées par leur nom et le nom de leur type dans le paragraphe VAR. La syntaxe de l'instruction de déclaration est:

nom1, nom2,...,nomN : nom d'un type ou spécification d'un type
Exemples:

VAR
UN_ENTIER : INTEGER;
I,J,K : INTEGER;

Les entiers sont représentés dans la mémoire comme des nombres binaires. L'intervalle des entiers dépend de l'organisation de la mémoire.

Type réel (REAL)

Les constantes manifestées ont toujours un point décimal ou une exposante.

Exemples:
1.5 -7.25 0.675
1.5E20 = 1.5.1020
1E-3 = 0.001

On déclare les constantes déclarées et les variables comme celles du type entier.

Exemples

CONST
PI = 3.14169265; EPS = 1E-3;
VAR
A,B,C : REAL;

Dans la mémoire les réels sont représentés comme des nombres binaire avec une virgule flottante. Donc 5 <> 5.0

Le type booléen (BOOLEAN)

Il y a deux constantes manifestées représentées par les mots clefs TRUE (vrai) et FALSE (faux). Les objets de ce type s'utilisent quand on doit déterminer l'accomplissement d'une condition. Les variables sont déclarées par le nom du type BOOLEAN.

Exemple:

VAR
T: BOOLEAN;

Le type caractère (CHAR).

Les constantes caractères sont encadrées par des apostrophes. Si la chaîne de caractères contient une apostrophe on doit la doubler.

Exemples:

CONST
C1 = 'A'; CHAINE1 = 'TINTIN';
CHAINE2 = 'c''est' ;

la valeur de la dernière constante est "c'est"