Vous êtes sur la page 1sur 12

Algorithme licence 1 Electrotechnique/ S

République Togolaise Institut des sciences Technologiques


Economiques et Administratives

(FORMATEC)

Algorithme et structure des


données

Support de cours

Présenté par Diane AGBEGNAN Année scolaire : 2023-2024

Ingénieure en informatique
Sommaire
Chapitre 1 : Généralités sur l’Algorithme et la programmation ............................................. 1
Chapitre 2 Les structures de condition ........................................................................................... 11
Chapitre 3 Les structures de contrôle répétitive ........................................................................ 15
Chapitre 4 Les tableaux et les matrices .......................................................................................... 19
Chapitre 5 Les sous programmes : les fonctions et les procédures .................................. 21
Chapitre 6 La récursivité ........................................................................................................................ 22
Chapitre 1 : Généralités sur l’Algorithme et la
programmation

1.1 Notions d’algorithme et de programme


1.1.1 Définition de l’algorithme

L’algorithme est une suite logique d’étapes, d’instructions permettant d’obtenir un


résultat à partir d’éléments fournis en entrée.

En programmation informatique, un Algorithme est un ensemble de règles


permettant à un ordinateur de fonctionner.

1.1.2 Distinction Algorithme et programme


Un algorithme ne peut pas être exécuté par un ordinateur.
Un programme exprime un algorithme dans un langage de programmation
particulier, ce programme peut être exécuté par un ordinateur.

De plus, un algorithme n'a pas de règles syntaxiques très précises, l'important est de
décrire en français ce qu'il faut faire. Pour le langage algorithmique, on parle de
pseudo-code ou pseudo langage.
En revanche, un programme utilise un langage particulier (C, PHP, VBA…) avec une
syntaxe très précise. Une virgule mal placée dans le programme risque d'entraîner un
bug de ce programme.

1.1.3 Structure de l’algorithme


Un algorithme se compose de trois parties :

Le nom de l'algorithme ;

La partie déclaration ;

Et la partie traitement.

Nom de l'algorithme
Partie déclaration : déclaration des variables et des constantes
écriture des fonctions et des procédures

Partie traitement
DEBUT
Actions et conditions
FIN

1
Créer un algorithme pour calculer la moyenne de 3 notes.
Solution :

Algo moyenne
Variables note, moyenne : entier
Début
Ecrire (entrer les notes)
Lire (note1, note2, note3)
Moyenne= (note1+note2+note3)/3
Ecrire (‘la moyenne est :’ moyenne)
Fin

2
Les actions élémentaires d'un algorithme sont : Affecter, Lire (ou saisir) et Écrire (ou
afficher).

1.1.4 Représentation d’un algorithme


Il existe deux (02) façons de représenter un Algorithme :

 L’organigramme de présentation : c’est une représentation graphique utilisée


pour analyser un problème. Elle est complexe à la résolution de grands problèmes et
donc abandonné au pseudo code
 Le langage structuré ou pseudo code : il représente textuellement l’algorithme.

3
1.1.5 Les étapes de résolution d’un problème
1) Comprendre l’énoncé du problème
2) Décomposer le problème en sous-problèmes plus simple à résoudre
3) Associer à chaque sous problème, une spécification :
 Les données nécessaires
 Les données résultantes
 La démarche à suivre pour arriver au résultat en partant d’un ensemble
de données.
4) Elaboration d'un algorithme

1.2 Concept de programmation


La programmation, appelée aussi codage dans le domaine informatique, désigne
l'ensemble des activités qui permettent l'écriture des programmes informatiques.

1.3 Les opérations d’entrée/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.

a Instruction de Lecture (Fonction d’entrée)


Instruction qui permet d’entrer des données tapées au clavier.

Syntaxe :

Lire (variable1) ;

Lire (variable2) ;

Lire (variable1, variable2) ;

Exemple :

Lire (note) ;

Lire (A, B) ;

b Instruction d’écriture (sortie)


Instruction qui permet d'afficher le contenu d’une variables ou/et un message sur
l'écran

Syntaxe :

Ecrire (variable) ;

Ecrire ('message') ;

Ecrire ('message', variable) ;

4
Exemple : Soit A est une variable.

Ecrire (A) : signifie affiché sur l’écran le contenu de la variable A.

Ecrire ('donnez votre nom : ') : signifie affiché sur l’écran le message suivant : donnez
votre nom :

TD N° 1 :

Ecrire un algorithme qui permet d’écrire à l’écran « Bonjour ».

c L’affectation
L’affectation est une opération qui consiste à attribuer une valeur à une variable.

Elle est représentée par une flèche orientée à gauche

Syntaxe : Variable Valeur ou expression

Exemple A 2 : la variable A reçoit la valeur 2

B A+1 : la variable B reçoit le contenu de A plus 1

Nom 'Mohamed' : la variable Nom reçoit la valeur Mohamed

Remarque : L’instruction d’affectation ne modifie que ce qui est situé à gauche de la


flèche. La valeur de la partie droite doit obligatoirement être du type de la variable
dont la valeur est modifiée.

TD N°3

Algo A1

Entier a, b, c :
Debut
a←1
b←2
b←a+b
c←a+b
Fin

Algo A2

Caractère a, b
Début
a ← ’1’
b ← ’2’
a←a+b
Fin

5
1.4 Les structures de données (les constantes et les variables)
En informatique, une structure de données est une manière d'organiser les données
pour les traiter plus facilement. Différentes structures de données existent pour des
données différentes : constantes, variables, enregistrements, structures composées
finies, tableaux (sur [1..n]), listes, arbres, graphes.

1.4.1 Déclaration de constantes et valeur


Une constante est un objet dont l'état reste inchangé durant toute l'exécution
d'un programme. On ne peut jamais modifier sa valeur et celle-ci doit donc être
précisée lors de la définition de l'objet.

Une CONSTANTE, comme une variable, peut représenter un chiffre, un nombre, un


caractère, une chaîne de caractères, un booléen. Toutefois, contrairement à une
variable dont la valeur peut être modifiée au cours de l’exécution de l’algorithme, la
valeur d’une constante ne varie pas.

Constante :

Nom= valeur

Nom : c’est le nom de la constante, il est composé de lettres et de chiffres.

Valeur : c’est la valeur de la constante, cette valeur restera inchangée pendant


l’exécution de l’algorithme.

Exemple : A =150

Quantite = 10.5

Pi = 3.14

Nom=’’ Lucas’’

1.4.2 Déclaration de variable et type

Une variable sert à stocker la valeur d’une donnée dans un langage de


programmation. Elle désigne un emplacement mémoire dont le contenu peut changer
au cours d’un programme (d’où le nom de variable). La variable doit être déclarée avant
d’être utilisée, elle doit être caractérisée par un nom (Identificateur) qui indique
l’ensemble des valeurs que peut prendre la variable (entier, réel, booléen, caractère,
chaîne de caractères, …).

Le choix du nom d’une variable est soumis à quelques règles qui varient selon le
langage, mais en général un nom doit commencer par une lettre alphabétique

6
exemple : A20 (20A n’est pas valide),

il doit être constitué uniquement de lettres, de chiffres et du soulignement (« _ »)


(Éviter les caractères spéciaux et les espaces).

Exemples : G20, Nom, TTC_2012 (TTC 2012, TTC-2012, TTC+2012, read, end) : sont
non valides).

Variable

Nom : Type

Nom : c’est le nom de la variable, il est composé de lettres et de chiffres.

Type : Un type (de variable) détermine l’ensemble de valeurs possibles de la variable


déclarées pour designer la nature du contenu de la variable et les opérations pouvant
être effectuées sur celle-ci.

Donc le type déterminera la nature de la variable.

a Les types de variables


Les variables peuvent avoir les types suivants :

Les variables peuvent être de différents types, par exemple : entier (INTEGER), réel
(REAL), Booléen (BOOLEAN), caractère (CHAR), chaîne de caractères (STRING) ...

 Le type entier (integer) : il représente un nombre entier quelconque

Exemple : (1, 5, -9000, 1256, 98, -45) ;

 Type réel (real) : il représente un nombre réel quelconque

Exemple :( 1.5, 5.0, -90.125, 1.256, 9.8, -45.0)

 Caractère (character) : il représente un caractère seul

Exemple : (‘a’, ’b’, ’ ‘, ’7’, ’/’, ’^’, ‘R’, ‘.’)

 Chaîne de caractères ou String : il représente un texte de zéro, un ou plusieurs


caractères.
Un caractère sera noté avec une apostrophe simple (exemple 'c') et la chaîne de
caractère sera notée entre guillemets doubles

Exemple : "contenu de la chaine"

 Type booléen : il représente une valeur logique binaire oui ou non, ouvert ou
fermé, vrai ou faux.

7
On peut représenter ces notions abstraites de VRAI et de FAUX par tout ce qu'on veut
: de l'anglais (TRUE et FALSE) ou des nombres (0 et 1).

Exemple de variable type standard :

Variables :

A, B : entier

Val1, Val2 : réel

Test : booléen

TD N° 2 :

Ecrire un algorithme qui demande à l’utilisateur de saisir son nom et son prénom puis
afficher bonjour suivi de nom et de prénom de l’utilisateur.

1.5 Les opérandes et les opérateurs


1.5.1 Définition
Un OPERATEUR est un outil qui permet d’agir sur une variable ou d’effectuer des
calculs.

Un OPERANDE est une donnée utilisée par un opérateur.

Exemple : Dans «9+4 », «+» désigne l’opérateur ; «9 » et «4 » sont les opérandes.

1.5.2 Les types d’opérateur


Les opérateurs dépendent du type de l'opération, ils peuvent être :

a DES OPERATEURS ARITHMETIQUES :


Ils permettent d’effectuer des opérations arithmétiques entre opérandes
numériques :

+ : Pour l’addition

- : Pour la soustraction

* : Pour la multiplication

DIV : pour la division entière, Exemple 5 DIV 2 = 2 ;

MOD : Pour le modulo (le reste de la division entière), exemple 5 MOD 2 =1.

b DES OPERATEURS DE RELATION OU DE COMPARAISON


Ils permettent de comparer deux opérandes

8
< Inférieur à

> Supérieur à

<= inférieur ou égale

>= Supérieur ou égal

<> Différent de

= égale à

c DES OPERATEURS LOGIQUES :


Ils combinent des opérandes booléens pour former des expressions logiques plus
complexes.

 Opérateur unaire : « non » (négation)


 Opérateurs binaires : «et » (conjonction), « ou » (disjonction),

AND le et logique

OR le ou logique

XOR le ou exclusif

NOT le non logique

d DES OPERATEURS SUR LES CHAINES : & (concaténation) ou Opérateur


alphanumérique (&) :
Cet opérateur permet de concaténer, autrement dit de coller l’une à l’autre, deux
chaînes de caractères.

Remarques :

On ne peut pas additionner un entier et un caractère.

La signification d’un opérateur peut changer en fonction du type des opérandes,


par exemple :

L’opérateur + avec des entiers effectue l’addition, 3+6 = 9.

Avec des chaînes de caractères il effectue la concaténation "bonjour" + " tout le


monde" vaut "bonjour tout le monde".

 Opérateurs sur les entiers et les réels : addition, soustraction,


multiplication, division, puissance, comparaisons, modulo (reste d’une division entière)
 Opérateurs sur les booléens : comparaisons, négation, conjonction,
disjonction
 Opérateurs sur les caractères : comparaisons
 Opérateurs sur les chaînes de caractères : comparaisons, concaténation

9
TD N°4 :

Ecrire un algorithme qui lit deux entiers au clavier et qui affiche ensuite leur somme
et leur produit.

TD N° 5:

Ecrire un algorithme qui lit le rayon d’un cercle et qui affiche ensuite son périmètre et
sa surface.

TD N° 6 :

Ecrire un algorithme qui calcule et affiche la résistance d’un composant électrique en


utilisant la loi d’Ohm :

NB :

 Un algorithme commence par le mot Algorithme suivit de son nom et un point-


virgule. Généralement le nom de l’algorithme indique sa fonction.
 Le mot Variables précède la liste des variables manipulées dans l’algorithme et
leurs types. Les variables du même type sont séparées par des virgules.
 Deux déclarations différentes sont séparées par un point-virgule.
 Les opérations de l’algorithme sont prises entre les mots Début et Fin indiquant
le début et la fin de l’algorithme. Ces opérations sont séparées par des points virgules.
 Un algorithme se termine par un point.

10

Vous aimerez peut-être aussi