2
Symboles organigramme
Symboles Significations
Opération sur les données et instructions. Par exemple un calcul,
une affectation. Est aussi utilisé pour les instructions dont les
symboles standardisés n’existent pas.
Exemple
Soit à resoudre le problème suivant sous forme d’organigramme :
Résoudre l’équation 𝑎𝑥 + 𝑏 = 0
3
si a = 0 et b ≠ 0 , ⟹ pas de solution
Analyse : { a = 0 et b = 0 , ⟹ infinité de solution
si
b b
si a ≠ 0 x = − a ⟹ S = {− a }
Organigramme
Début
Lire a, lire b
a=0
a=0
FIN
Devoir : Représenter sous forme d’organigramme la résolution d’une équation de 2nd degré ;
puis de l’algorithme de détermination du pgcd de deux nombres.
3.3 Vocabulaire de base
Pour la suite de ce cours, la compréhension des concepts suivants est d’une importance capitale.
Nous allons également dans la mêlée, donner certains concepts du langage que vous allez
approfondir en vous appuyant sur le cours de langage C mis à votre disposition (Programmation
langage C, sébastien varrette, nicolas bernard).
Syntaxe : C’est une règle d’écriture dans un langage donné.
Déclaration : en algorithmique, on ne manipule pas les données sans les déclarer. Les
syntaxes de déclaration des constantes et des variables sont les suivants :
Constantes : objet donc l’état ne change pas pendant le déroulement de
l’algorithme.
4
Exemple
5
chaine A ;
chaine 𝐵 ← "𝑡𝑜𝑡𝑜" ;
En anglais string.
En langage C, on manipule les chaines sous forme de tableaux ou de pointeurs.
Caractère vide
Tableau de donné : C’est un ensemble de données de même type.
Syntaxe : En algorithmique
Tableau 〈Nom tableau〉[〈Longueur〉] en type caractère
tableau T[10] en entier
En langage C :
int A[10] ;
char A[20] ;
Identificateur : Nom explicite d’une constante, d’une variable ou bien d’une fonction.
Les variables doivent être de préférence en majuscules, les identificateurs doivent être
de type alpha numérique. On ne doit pas commencer par un chiffre et un identificateur
ne doit pas contenir les caractères suivant : ! ↔ (espace) ? ; −(trait de 6 ou tiret) ′ /
\
Remarque : Les Under scores sont permis : on peut écrire Nom_1 mais pas 𝐍𝐨𝐦− 1
Mots clés en langage C: auto, break, case, char, const, continue, default, do, double,
else, enum, extern, float, for, gets, if, int, long, register, return, short, signed, size of,
static, struct, switen, type def, unsigned, void (utilisée pour la procedure), union,
volatile, while, à ne pas utilizer comme identificateur de variable.
NB : En langage C, la casse est importante
6
3.4 Sous algorithme
Un sous algorithme est un bloc d’instructions conçu pour réaliser un traitement bien déterminé.
Il ne dépend pas du contexte de l’algorithme. Il est appelé par l’algorithme. Un sous algorithme
peut aussi appeler un autre sous algorithme. Il est matérialisé dans un algorithme sous forme de
procédure ou fonction.
Une fonction se différencie d’une procédure par le fait qu’elle fournit un résultat.
Nous préciserons la structure d’une procédure et d’une fonction dans la structure d’un
algorithme. Le volet procédure et fonction est détaillé dans le chapitre y relatif.
- Les déclarations
o Constantes : Const〈NomConst〉 ← 〈Valeur〉
o Les types : il s’agit essentiellement des types définis
o Les variables : Var〈NomVariable〉 ∶ 〈Type〉
o Définition des procédures et fonctions :
𝐏𝐫𝐨𝐜é𝐝𝐮𝐫𝐞 〈NomProcédure〉(< liste des paramètres >)
∕∕ déclarations
Début
// Liste des instructions
Fin
7
𝐅𝐨𝐧𝐜𝐭𝐢𝐨𝐧 〈NomFonction〉(< liste des paramètres >) ∶ 〈Typefonction〉
∕∕ déclarations
Début
//Liste des instructions
Renvoyer 〈Valeur〉
Fin
- Corps de l’algorithme
Debut
FinAlgo
Exemple d’algorithme
//Donnée : R ; Résultat : S
Const Pi ⟵ 3,14
Var : R, S ; réel
Début
Lire (R)
S ⟵ Pi*R*R
Fin
8
3.6 Structure d’un programme en langage C
- Directives de compilation
#include 〈stdio. h〉
#include 〈math. h〉
- Déclaration des types : les types définis c’est par le mot clé typedef
- Déclaration des variables
〈TypeVar〉 〈NomVar〉 ;
int A ;
char B ;
int A = 0 ;
- Définition des fonctions et procédures
〈Typefonction〉 〈Nomfonction〉(< Liste des paramètres >){
return〈valeur〉 ;
}
Exemple :
int factoriel(int n){
return fact ;
}
Void 〈Nomprocédure〉(Liste des paramètres){
9
Exemple : void Essai(){
Devoirs :
1- Formatage des entrées sorties en C
2- Chercher les exemples de fichiers qu’on peut inclure dans un programme.
3- Ecrire un programme qui calcule la combinaison en utilisant une fonction
factorielle existant dans une bibliothèque dans un fichier.h
10