Vous êtes sur la page 1sur 4

Algorithmique 

Un programme est un ensemble d’ordres écrits dans un langage convertissable afin d’être exécuté
par la machine.

Un algorithme est un ensemble de traitements informatisables.

Mise en forme d’un algorithme :


Nom de l’algorithme

Variables
....
Début
....
Fin

Traitements possibles dans un algo  : saisie, calcul, affichage, condition, affectation (variables),
itération.

Les variables et les constantes permettent de conserver des valeurs en vue d’un traitement. Une
constante, en revanche, est définie une fois pour toute à l’intérieur du « programme » (avant les
déclarations de variables) et ne peut pas être modifiée par l’utilisateur.

Une variable se caractérise par un nom et un type de données. Les types de données utilisables sont
les suivants : réel (nombre à virgule), entier (nombre entier), chaîne (texte de longueur variable),
caractère ( un seul caractère, par exemple ‘0’, ‘a’), booléen (valeur logique pouvant être VRAI ou
FAUX).

Déclaration d’une variable :


Programme TestDéclaration

Variables
LaValeur : Entier
Vnom, Vprenom, Vadresse : Chaîne
Début
Instructions
Fin

Écrire un algo permettant d’échanger les valeurs de deux variables  : On doit passer par une variable
dite temporaire (quel que soit le nombre de variables, une seule variable temporaire suffit).

Dès qu’il y a comparaison (recherche du + petit ou + grand)  : Partir du principe que le premier
nombre est le plus petit (ou plus grand selon les cas), en posant une nouvelle variable ‘min’ ou ‘max’
qui prend la valeur du premier nombre, on l’initialise donc comme étant la plus petite valeur, puis on
compare ‘min’ ou ‘max’ avec les autres valeurs.

Remarques :
- Le nom des variables doit être significatif (parlant).
- Le nom des variables ne doit pas contenir de signes de ponctuation, d’espaces et ne doit pas
commencer par un chiffre.
- Il faut toujours déclarer une variable et cela toujours en début de programme.
- On ne peut pas additionner des caractères (erreur) ou sinon, ça concatène : ‘12’ + ‘3’ = ‘123’.
L’affectation est le transfert d’une information dans une variable :
variable  valeur ou variable
La valeur ou contenu de la variable de droite est transféré en mémoire centrale dans la variable de
gauche. On peut tout transférer à condition que les données soient compatibles en type (entier,
caractères...). Si la variable de gauche contenait une valeur avant l’affectation, cette valeur sera
écrasée par la nouvelle.

Le calcul est le transfert du résultat d’un calcul dans une variable  :


Variable  Calcul
La partie calcul peut contenir une ou plusieurs valeurs et/ou variables. Elle peut contenir un ou
plusieurs opérateurs arithmétiques/logiques et des parenthèses. On peut tout transférer à condition
que le résultat du calcul soit compatible en type. Si la variable de gauche contenait déjà une valeur,
celle-ci est écrasée.

Opérateurs possibles :
+ addition somme  4 + 8
- soustraction nbannee  18 – age
* multiplication
/ division
div division entière result  3 div 2 ( donne le quotient de la division euclidienne).
mod reste de division result  3 mod 2 (donne le reste de la division euclidienne).
() parenthèses total  (somme + tva)*remise

Saisie : saisir nom_variable


Dès que le programme rencontre une instruction Saisir, l’exécution s’interrompt, attendant la frappe
d’une valeur au clavier.

Variables
Vnom : Chaîne
Début
Afficher ‘’Saisir votre nom :’’
Saisir Vnom
Afficher ‘’Bonjour’’, Vnom
Fin

Affichage : afficher information


On peut afficher une variable (qui doit contenir une valeur), du texte (entre ‘’ ‘’), une valeur
numérique, un calcul (le résultat sera alors affiché), une combinaison des points précédents.

Exemple : Dans la mémoire, la variable nom contient ‘’Nicolas’’ et âge contient 12.
Afficher nom Nicolas
Afficher ‘’bonjour’’, nom, ‘’ !’’ bonjour Nicolas !
Afficher ‘’12*2 = ‘’, âge*2 12*2 = 24
Afficher age, ‘’ans’’ 12 ans
Afficher « Il sera majeur dans’’, 18-âge, ‘’ans’’ Il sera majeur dans 6 ans
Les Tests
Condition : Exécution des traitements uniquement si la condition est vraie.

Si condition Alors
Afficher Traitement(s)1
Sinon
Afficher Traitement(s)2
FinSi

Les opérateurs de comparaison :


= égal à
<> ou != différent de
< strictement plus petit que
> strictement plus grand que
<= plus petit ou égal à
>= plus grand ou égal à

Les opérateurs logiques :


ET : Il faut impérativement que Condition1 soit vraie ET que Condition2 soit vraie.
OU : Il suffit que Condition1 soit vraie OU que Condition2 soit vraie.
NON : Le NON inverse une condition : NON(Condition1).
XOU (un OU exclusif) : SI Condition1 est vraie, ou si Condition2 est vraie, mais pas les deux en même
temps.

Tests imbriqués :
Si condition1 Alors
Afficher Instruction1
SinonSi condition2 Alors
Afficher Instruction2
Sinon
Afficher Instruction3
FinSi

Les Boucles :

Itération : Une structure répétitive permet de répéter un ensemble d’actions un certain nombre de
fois. Il existe plusieurs catégories : Tantque, Répéter, Pour.

Tantque : Les traitements s’exécutent tant que la condition est vraie. C’est la boucle la plus générale.
Elle boucle de 0 a N fois.

Tantque condition
Afficher traitement
Fintantque

Répéter : Les traitements s’exécutent jusqu’à ce que la condition soit vraie. Lorsque la condition
devient vraie, le programme reprend après le jusqu’à. Elle boucle de 1 à N fois.

Répéter
Afficher traitement(s)
Jusqu’à condition
Contrairement à la boucle TantQue où la condition est une condition d’entrée dans la boucle, la
condition Répéter est une condition de sortie : on sort si la condition est vraie.

Pour : cpt est initialisé à départ, puis les traitements s’exécutent à chaque passage de boucle, cpt est
incrémenté de pas ( ou 1 par défaut). La sortie s’effectue quand cpt a dépassé arrivée. C’est la boucle
idéale lorsque le nombre d’itération est connu. Elle boucle ((arrivée-départ +1/pas) fois.

Pour cpt de depart à arrivée (pas de pas)


Afficher traitement
Finpour

Pour est un cas particulier de TantQue, celui où le programmeur peut dénombrer à l’avance le
nombre de tours de boucle nécessaires.

Vous aimerez peut-être aussi