Vous êtes sur la page 1sur 4

Cours

 d’Algorithmique  
 

 
Cours  d’Algorithmique  ....................................................................................................................................  1  
I.   Généralités  ...................................................................................................................................................  5  
Un  peu  d’histoire  ...........................................................................................................................................................  5  
Pour  quoi  faire  ?  ............................................................................................................................................................  6  
Définition  .........................................................................................................................................................................  6  
L’analyse  ..........................................................................................................................................................................  7  
Présentation  d’un  algorithme  ..................................................................................................................................  9  
Sous  forme  d’organigramme  .....................................................................................................................................................  9  
Sous  forme  de  pseudo  code  ou  pseudo  langage  .............................................................................................................  11  
II.   Les  éléments  de  structure  ..................................................................................................................  15  
Les  variables  ................................................................................................................................................................  15  
Définition  ........................................................................................................................................................................................  15  
Exemples  .........................................................................................................................................................................................  16  
Les  types  de  variables  ...............................................................................................................................................................  16  
Les  instructions  ..........................................................................................................................................................  17  
Définition  ........................................................................................................................................................................................  17  
Catégories  .......................................................................................................................................................................................  17  
Les  entrées/sorties  .....................................................................................................................................................................  17  
Les  constantes  .............................................................................................................................................................  18  
Définition  ........................................................................................................................................................................................  18  
Déclaration  .....................................................................................................................................................................................  18  
Exercices  .......................................................................................................................................................................  18  
III.   Les  types  simples  .................................................................................................................................  24  
Les  entiers  ....................................................................................................................................................................  24  
Syntaxe  et  valeurs  .......................................................................................................................................................................  24  
Opérateurs  ......................................................................................................................................................................................  25  
Fonctions  .........................................................................................................................................................................................  25  
Les  réels  ........................................................................................................................................................................  26  
Syntaxe  et  valeurs  .......................................................................................................................................................................  26  
Opérateurs  ......................................................................................................................................................................................  26  
Fonctions  .........................................................................................................................................................................................  27  
Les  caractères  .............................................................................................................................................................  27  
Syntaxe  et  valeurs  .......................................................................................................................................................................  27  
Opérateurs  ......................................................................................................................................................................................  28  

Frédéric  Jacquenod     Page  1  sur  124  


Fonctions  .........................................................................................................................................................................................  28  
Les  booléens  ................................................................................................................................................................  28  
Syntaxe  et  valeurs  .......................................................................................................................................................................  29  
IV.   Les  opérateurs  ......................................................................................................................................  30  
Rappel  ............................................................................................................................................................................  30  
Les  Opérateurs  logiques  ..........................................................................................................................................  30  
Les  tables  de  vérités  ...................................................................................................................................................................  30  
Loi  de  Morgan  ...............................................................................................................................................................................  35  
Les  Opérateurs  de  comparaison  ...........................................................................................................................  35  
Les  opérateurs  ..............................................................................................................................................................................  35  
Les  intervalles  ...............................................................................................................................................................................  36  
V.   Les  fichiers  ...............................................................................................................................................  37  
Syntaxe  ..........................................................................................................................................................................  37  
Résumé  ..........................................................................................................................................................................  38  
Manipulation  ...............................................................................................................................................................  38  
Déclaration  .....................................................................................................................................................................................  38  
Ouverture  d’un  fichier  ...............................................................................................................................................................  38  
Le  traitement  .................................................................................................................................................................................  39  
La  fermeture  du  fichier  .............................................................................................................................................................  41  
VI.   Les  instructions  conditionnelles  :  les  tests  ..................................................................................  42  
Si  :  test  simple  .............................................................................................................................................................  42  
Syntaxe  .............................................................................................................................................................................................  42  
Exemple  ...........................................................................................................................................................................................  42  
Si  :  alternative  simple  ...............................................................................................................................................  43  
Syntaxe  .............................................................................................................................................................................................  43  
Exemple  ...........................................................................................................................................................................................  43  
Si  :  alternative  multiple  ...........................................................................................................................................  44  
Syntaxe  .............................................................................................................................................................................................  44  
Exemple  ...........................................................................................................................................................................................  44  
SelonQue  .......................................................................................................................................................................  45  
Syntaxe  .............................................................................................................................................................................................  45  
Exemple  ...........................................................................................................................................................................................  45  
VII.   Les  instructions  répétitives  :  les  boucles  ....................................................................................  47  
Généralités  ...................................................................................................................................................................  47  
Boucle  déterministe  POUR  .....................................................................................................................................  47  
Syntaxe  .............................................................................................................................................................................................  48  
Remarques  .....................................................................................................................................................................................  48  
Exemple  ...........................................................................................................................................................................................  48  
Boucle  TANT  QUE  .......................................................................................................................................................  49  
Syntaxe  .............................................................................................................................................................................................  49  
Remarques  .....................................................................................................................................................................................  50  
Exemple  ...........................................................................................................................................................................................  50  
Boucle  REPETER  …  JUSQU'A  ...................................................................................................................................  52  
Syntaxe  .............................................................................................................................................................................................  52  
Remarques  .....................................................................................................................................................................................  52  
Exemple  ...........................................................................................................................................................................................  52  
VIII.   Les  types  structurés  .........................................................................................................................  54  
Les  tableaux  statiques  ..............................................................................................................................................  54  
Généralités  .....................................................................................................................................................................................  54  
Représentation  .............................................................................................................................................................................  55  
Syntaxe  .............................................................................................................................................................................................  56  

Frédéric  Jacquenod     Page  2  sur  124  


Initialisation  ...................................................................................................................................................................................  57  
Utilisation  .......................................................................................................................................................................................  57  
Les  chaînes  de  caractères  .......................................................................................................................................  58  
Généralités  .....................................................................................................................................................................................  58  
Syntaxe  .............................................................................................................................................................................................  59  
Les  opérateurs  ..............................................................................................................................................................................  59  
Les  enregistrements  .................................................................................................................................................  60  
Généralités  .....................................................................................................................................................................................  60  
Syntaxe  .............................................................................................................................................................................................  60  
Représentation  et  utilisation  ..................................................................................................................................................  61  
Tableau  d’enregistrements  ....................................................................................................................................  61  
Généralité  ........................................................................................................................................................................................  61  
Déclaration  .....................................................................................................................................................................................  61  
Utilisation  .......................................................................................................................................................................................  62  
Représentation  .............................................................................................................................................................................  63  
Les  pointeurs  ...............................................................................................................................................................  63  
Généralité  ........................................................................................................................................................................................  63  
Déclaration  .....................................................................................................................................................................................  65  
Utilisation  .......................................................................................................................................................................................  66  
Remarques  .....................................................................................................................................................................................  66  
Exemple  ...........................................................................................................................................................................................  66  
Exemple  ...........................................................................................................................................................................................  67  
Les  listes  chaînées  simple  et  liste  chaînées  d’enregistrements  .................................................................  67  
Généralité  ........................................................................................................................................................................................  67  
Structure  .........................................................................................................................................................................................  68  
Déclaration  .....................................................................................................................................................................................  69  
Construction  d’une  liste  chaînée  ..........................................................................................................................................  70  
Boucle  d’affichage  .......................................................................................................................................................................  74  
Boucle  de  recherche  du  ième  élément  ...............................................................................................................................  75  
Insertion  d’un  élément  dans  une  liste  chaînée  double  chaînage  ............................................................................  75  
Suppression  d’un  élément  dans  une  liste  chaînée  double  chaînage  .....................................................................  77  
IX.   Procédures  et  fonctions  .....................................................................................................................  79  
Généralités  ...................................................................................................................................................................  79  
Définition  ........................................................................................................................................................................................  79  
Choix  entre  procédure  et  fonction  .......................................................................................................................................  79  
Propriétés  .......................................................................................................................................................................................  80  
Exemples  .........................................................................................................................................................................................  80  
Les  procédures  ...........................................................................................................................................................  80  
Syntaxe  .............................................................................................................................................................................................  81  
Exemples  .........................................................................................................................................................................................  81  
Les  fonctions  ................................................................................................................................................................  82  
Syntaxe  .............................................................................................................................................................................................  83  
Exemples  .........................................................................................................................................................................................  83  
Les  paramètres  ...........................................................................................................................................................  85  
Définitions  ......................................................................................................................................................................................  85  
Passages  des  paramètres  .........................................................................................................................................................  85  
Exemples  .........................................................................................................................................................................................  86  
Résumé  ............................................................................................................................................................................................  87  
Variables  publiques  et  variables  locales  ...........................................................................................................  87  
Définitions  ......................................................................................................................................................................................  87  
Syntaxe  .............................................................................................................................................................................................  88  
X.   Complexité  des  algorithmes  ...............................................................................................................  89  
Définition  ......................................................................................................................................................................  89  

Frédéric  Jacquenod     Page  3  sur  124  


Analyse  de  la  complexité  .........................................................................................................................................  89  
Quelques  règles  mathématiques  ..........................................................................................................................  90  
Règles  de  simplification  ............................................................................................................................................................  90  
Exemple  ...........................................................................................................................................................................................  91  
Famille  de  complexité  ..............................................................................................................................................  91  
Les  algorithmes  logarithmiques  ...........................................................................................................................................  91  
Les  algorithmes  linéaires  .........................................................................................................................................................  92  
Les  algorithmes  puissances  ....................................................................................................................................................  92  
Les  algorithmes  exponentiels  ou  factoriels  .....................................................................................................................  93  
Comparaison  ...............................................................................................................................................................  94  
XI.   Les  algorithmes  de  recherche  ..........................................................................................................  97  
Recherche  séquentielle  ...........................................................................................................................................  97  
Principe  ............................................................................................................................................................................................  97  
Formalisation  ................................................................................................................................................................................  97  
Complexité  ......................................................................................................................................................................................  99  
Recherche  par  dichotomie  ou  recherche  binaire  ...........................................................................................  99  
Principe  ............................................................................................................................................................................................  99  
Formalisation  ................................................................................................................................................................................  99  
Complexité  ...................................................................................................................................................................................  102  
Recherche  dichotomique  par  interpolation  ..................................................................................................  102  
Principe  .........................................................................................................................................................................................  102  
Théorème  de  Thalès  ................................................................................................................................................................  102  
Formalisation  .............................................................................................................................................................................  104  
Complexité  ...................................................................................................................................................................................  104  
XII.   Les  algorithmes  de  tri  .....................................................................................................................  106  
Les  tris  élémentaires  .............................................................................................................................................  106  
Tri  par  sélection  ........................................................................................................................................................................  106  
Tri  par  insertion  ........................................................................................................................................................................  107  
Tri  à  bulles  simple  ....................................................................................................................................................................  109  
Le  tri  à  bulles  amélioré  ..........................................................................................................................................................  111  
Tri  par  fusion  (diviser  pour  régner)  ................................................................................................................................  114  
 
   

Frédéric  Jacquenod     Page  4  sur  124  

Vous aimerez peut-être aussi