SlideShare a Scribd company logo
1 of 5
Download to read offline
1) Tours de Hanoï
                               2) Tri rapide
                               3) Huit dames (voir p234-240)
                               4) Voyageur de commerce (voir livre p226-233)


 I. Introduction
     Ce chapitre traite des problèmes un peu plus complexes que les problèmes classiques déjà vus
     comme de nouvelles méthodes de recherche, de tri, d'approximation ou d'optimisation.
     Les algorithmes avancés utilisent le principe "diviser pour régner (divide to conquer) ".


 II.       Tours de Hanoï

1) Activité
   Charger l’URL : http://www.toupty.com/jeutourshanoi.html

   Charger l’URL : http://javaboy.free.fr/tourdehanoi/index.htm

   Ouvrir le fichier C:avancéhanoi.exe


2) Principe :
Le but du problème est de passer en un minimum de déplacements ces N disques du piquet 1 sur le piquet
3 en s'aidant du piquet 2 qui peut servir à des stockages intermédiaires de disques. Les règles suivantes
doivent être respectées :
                •   on ne peut déplacer qu'un seul disque à la fois,
                •   un disque peut être déplacé d'un des trois piquets sur l'un des deux autres,
                •   un disque ne peut être placé que sur le sol ou sur un disque de diamètre supérieur.




                    1                                   2                                    3

                    1
3) Application
Ecrire un programme modulaire en PASCAL, qui saisit N disques (1<=N<=64), affiche les déplacements
effectués.
      Analyse du programme principal :
       2) Résultat = Proc Hanoi (n, 1, 3, 2)
       1) N = proc saisie (n)


      Analyse de la procédure Hanoi :
              DEF PROC Hanoi (n, depart, but, inter: entier)
              Résultat= Hanoi
             1) Hanoi =[ ] Si N =1 alors
                                     Ecrire (''déplacer un disque de '',depart , '' en '', but)
                         sinon
                                    Proc hanoi ( n-1, depart, inter, but )
                                    Ecrire (''déplacer un disque de '', depart , '' en '', but)
                                    Proc hanoi ( n-1, inter, but, depart )
                         Fin Si




                    2
III.         Tri rapide
1. Activité

2. principe
C’est un algorithme considéré comme l'un des plus rapides, et des plus efficaces. C’est une méthode de
tri récursive basée sur la méthode de conception "diviser pour régner".

 L’idée de l’algorithme est très simple ;
Etant donné un vecteur d’éléments à trier :
1. Choisir un élément arbitraire du tableau, que nous appelons élément pivot.
2. Réorganiser les éléments du tableau de sorte que tous les éléments inférieurs au pivot soient à gauche
du pivot, les éléments supérieurs au pivot soient à droite du pivot, ceux qui sont égaux soit à gauche soit à
droite et le pivot choisi entre les deux. Cette opération s’appelle partition.
3. Trier récursivement la partie gauche et la partie droite du tableau jusqu’à obtenir uniquement des sous
tableaux à un seul élément.



Comment choisir le pivot ?
Nous pouvons choisir comme pivot l’élément situé au milieu de la partie à trier. Comme on peut choisir le
premier élément.

              3) Application

Ecrire un programme modulaire en Pascal qui remplit un vecteur T, par N entiers aléatoirement
(-100<=T[i]<=100; 5<=N<=50), le trier selon la méthode de tri rapide puis l’afficher.

      Analyse du programme principal :
       3) Résultat= Proc affiche (T, n)
       2) T= Proc tri_rapide (T, 1, n)
       1) (T, n) = Proc remplir (T, n)



      Analyse de la procédure Tri_rapide
         DEF PROC Tri_rapide (var T: Tab; g , d: entier)
          Résultat = T
         1) T= [ ] Si g<d alors
                        proc partition (T, g, d, indpivot)
                        proc tri_rapide (T , g , indpivot-1)
                        proc tri_rapide (T , indpivot+1 , d)
                   Fin Si




                   3
   Analyse de la procédure Partition
    DEF PROC Partition (var T: Tab; g, d : entier ; var indpivot: entier)
    1) T, indpivot=    i  g+1           Répéter
                       pivot  T[g]                Tant que (i < indpivot) et (t[i] < pivot) Faire
                      indpivot  d                                        ii+1
                                                   Fin tant que
                                                  Tant que (i <=indpivot) et (pivot <= T[indpivot]) Faire
                                                                    indpivot  indpivot - 1
                                                  Fin tant que
                                                  Si i<indpivot alors
                                                                     proc Permut (T[i], T[indpivot])
                                                                       ii+1
                                                                      Indpivot  indpivot - 1
                                                  Fin si
                                         Jusqu’à (indpivot<=i)
                                         Proc Permut (T[g], T[indpivot])




               4
IV.       Huit dames
1. Activité
   1. Charger le fichier C:avancéhuitdames.exe
   2. Fixer le nombre de dames à 4, chercher une distribution possible des dames sur l’échiquier.
   3. Charger la page web: http://jellevy.yellis.net/Classes/Activite/recree_8reines.htm
   4. Charger la page web: http://www.echecsetmaths.com/echec/prob/8reines/8reines.htm

2. Principe
   Le problème des huit dames (dit aussi problème des huit reines), consiste à placer huit reines
   d’un jeu d’échecs sur un échiquier de 8x8 cases sans que les dames ne puissent se menacer
   mutuellement.
    Deux dames ne devraient jamais partager la même ligne ou la même colonne ou la même
   diagonale.

3. Constatations
                                                                               Principe du Backtracking
                    Je peux tomber dans
                    un cas de blocage !!!                                         (Retour sur trace)




4. Définition
   Le Backtracking, ou retour sur trace consiste à revenir en arrière sur des décisions prises à fin
   de sortir d’une situation de blocage.

5. Application
   Tester la solution proposée dans le livre page 239

V. Voyageur de commerce
   1. Activité
 Charger l’URL : http://interstices.info/jcms/c_37686/le-probleme-du-voyageur-de-commerce

   2. Principe :
      Étant donné n points (des « villes ») et les distances séparant chaque point, trouver un chemin de
      longueur totale minimale qui passe exactement une fois par chaque point et revienne au point de
      départ.
   3. Application
           Tester la solution proposée dans la livre page 231


                5

More Related Content

What's hot

éNoncés+corrections bac2009
éNoncés+corrections bac2009éNoncés+corrections bac2009
éNoncés+corrections bac2009
Morom Bil Morom
 
éNoncés+corrections bac2008
éNoncés+corrections bac2008éNoncés+corrections bac2008
éNoncés+corrections bac2008
Morom Bil Morom
 
Fonctions chaine
Fonctions chaineFonctions chaine
Fonctions chaine
Afef Ilahi
 
Les algorithmes d’approximation
Les algorithmes d’approximationLes algorithmes d’approximation
Les algorithmes d’approximation
Wael Ismail
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 si
Narûtö Bàl'Sèm
 
Exercices en turbo pascal sur la récursivité
Exercices en turbo pascal sur la récursivitéExercices en turbo pascal sur la récursivité
Exercices en turbo pascal sur la récursivité
salah fenni
 
LES ALGORITHMES D’APPROXIMATION
LES ALGORITHMES D’APPROXIMATIONLES ALGORITHMES D’APPROXIMATION
LES ALGORITHMES D’APPROXIMATION
borhen boukthir
 
Sujets de preparation bac tp (sayari)
Sujets de preparation bac tp (sayari)Sujets de preparation bac tp (sayari)
Sujets de preparation bac tp (sayari)
mohamed_SAYARI
 

What's hot (20)

éNoncés+corrections bac2009
éNoncés+corrections bac2009éNoncés+corrections bac2009
éNoncés+corrections bac2009
 
Corrige exercices pascal_fenni_2018
Corrige exercices pascal_fenni_2018Corrige exercices pascal_fenni_2018
Corrige exercices pascal_fenni_2018
 
Recursiviteeeeeeeeee
RecursiviteeeeeeeeeeRecursiviteeeeeeeeee
Recursiviteeeeeeeeee
 
éNoncés+corrections bac2008
éNoncés+corrections bac2008éNoncés+corrections bac2008
éNoncés+corrections bac2008
 
Fonctions chaine
Fonctions chaineFonctions chaine
Fonctions chaine
 
Les algorithmes d’approximation
Les algorithmes d’approximationLes algorithmes d’approximation
Les algorithmes d’approximation
 
Algorithmique programmation2018
Algorithmique programmation2018Algorithmique programmation2018
Algorithmique programmation2018
 
Exercices algo
Exercices algoExercices algo
Exercices algo
 
Récursivité
RécursivitéRécursivité
Récursivité
 
Mes devoirs 4 si
Mes devoirs 4 siMes devoirs 4 si
Mes devoirs 4 si
 
Serie2
Serie2Serie2
Serie2
 
Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 si
 
Serie
SerieSerie
Serie
 
Exercices en turbo pascal sur la récursivité
Exercices en turbo pascal sur la récursivitéExercices en turbo pascal sur la récursivité
Exercices en turbo pascal sur la récursivité
 
LES ALGORITHMES D’APPROXIMATION
LES ALGORITHMES D’APPROXIMATIONLES ALGORITHMES D’APPROXIMATION
LES ALGORITHMES D’APPROXIMATION
 
Cours algorithme: structures répétitives
Cours algorithme: structures répétitivesCours algorithme: structures répétitives
Cours algorithme: structures répétitives
 
Sujets de preparation bac tp (sayari)
Sujets de preparation bac tp (sayari)Sujets de preparation bac tp (sayari)
Sujets de preparation bac tp (sayari)
 
resume algo 2023.pdf
resume algo 2023.pdfresume algo 2023.pdf
resume algo 2023.pdf
 
Correction
CorrectionCorrection
Correction
 

Viewers also liked

Se préparer au BAC TP
Se préparer au BAC TPSe préparer au BAC TP
Se préparer au BAC TP
mohamed_SAYARI
 
Le problème de voyageur de commerce: algorithme génétique
Le problème de voyageur de commerce: algorithme génétiqueLe problème de voyageur de commerce: algorithme génétique
Le problème de voyageur de commerce: algorithme génétique
Rima Lassoued
 
Serie tri revision_3si
Serie tri revision_3siSerie tri revision_3si
Serie tri revision_3si
Riadh Harizi
 
Résumer sur les fichier et les enregistrement
Résumer sur les fichier et les enregistrementRésumer sur les fichier et les enregistrement
Résumer sur les fichier et les enregistrement
borhen boukthir
 
Actividad integradora jonás
Actividad integradora  jonásActividad integradora  jonás
Actividad integradora jonás
Adalberto
 

Viewers also liked (16)

Les enregistrements
Les enregistrements Les enregistrements
Les enregistrements
 
Se préparer au BAC TP
Se préparer au BAC TPSe préparer au BAC TP
Se préparer au BAC TP
 
Tipe 2017 - Nouvelles directives (15/09/20176)
Tipe 2017 - Nouvelles directives (15/09/20176)Tipe 2017 - Nouvelles directives (15/09/20176)
Tipe 2017 - Nouvelles directives (15/09/20176)
 
Le problème de voyageur de commerce: algorithme génétique
Le problème de voyageur de commerce: algorithme génétiqueLe problème de voyageur de commerce: algorithme génétique
Le problème de voyageur de commerce: algorithme génétique
 
bac info : série récursivité
bac info : série récursivitébac info : série récursivité
bac info : série récursivité
 
Chap04 les-algorithme-de-tri-et-de-recherche
Chap04 les-algorithme-de-tri-et-de-rechercheChap04 les-algorithme-de-tri-et-de-recherche
Chap04 les-algorithme-de-tri-et-de-recherche
 
Serie tri revision_3si
Serie tri revision_3siSerie tri revision_3si
Serie tri revision_3si
 
DCT1 4SI
DCT1  4SIDCT1  4SI
DCT1 4SI
 
Série sous programmes (bac scientifique)
Série sous programmes (bac scientifique)Série sous programmes (bac scientifique)
Série sous programmes (bac scientifique)
 
Résumer sur les fichier et les enregistrement
Résumer sur les fichier et les enregistrementRésumer sur les fichier et les enregistrement
Résumer sur les fichier et les enregistrement
 
Actividad integradora jonás
Actividad integradora  jonásActividad integradora  jonás
Actividad integradora jonás
 
Le projet carer+ l’advd comme « chainon manquant » entre l’outil numérique e...
Le projet carer+  l’advd comme « chainon manquant » entre l’outil numérique e...Le projet carer+  l’advd comme « chainon manquant » entre l’outil numérique e...
Le projet carer+ l’advd comme « chainon manquant » entre l’outil numérique e...
 
le
lele
le
 
Lecture Managériale du Bilan Comptable - 2 Mars 2011 - Le Rustique Alger
Lecture Managériale du Bilan Comptable - 2 Mars 2011 - Le Rustique AlgerLecture Managériale du Bilan Comptable - 2 Mars 2011 - Le Rustique Alger
Lecture Managériale du Bilan Comptable - 2 Mars 2011 - Le Rustique Alger
 
La Keynote RepriseMedia du 23/03/11
La Keynote RepriseMedia du 23/03/11La Keynote RepriseMedia du 23/03/11
La Keynote RepriseMedia du 23/03/11
 
Destination quebec abg conference_impots 2015
Destination quebec abg conference_impots 2015Destination quebec abg conference_impots 2015
Destination quebec abg conference_impots 2015
 

Similar to Les algorithmes avancés

Chapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdfChapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdf
MbarkiIsraa
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
Chahrawoods Dmz
 
Cours algorithmique et complexite
Cours algorithmique et complexite Cours algorithmique et complexite
Cours algorithmique et complexite
Saddem Chikh
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
Chahrawoods Dmz
 
INF120 - Algo DUT SRC1 - Cours 2 (2012)
INF120 - Algo DUT SRC1 - Cours 2 (2012)INF120 - Algo DUT SRC1 - Cours 2 (2012)
INF120 - Algo DUT SRC1 - Cours 2 (2012)
PGambette
 

Similar to Les algorithmes avancés (20)

Chapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdfChapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdf
 
Chapitre 3 NP-complétude
Chapitre 3 NP-complétudeChapitre 3 NP-complétude
Chapitre 3 NP-complétude
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
 
Cours algorithmique et complexite
Cours algorithmique et complexite Cours algorithmique et complexite
Cours algorithmique et complexite
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
 
chapitre 5.pptx
chapitre 5.pptxchapitre 5.pptx
chapitre 5.pptx
 
Rapport MOGPL
Rapport MOGPLRapport MOGPL
Rapport MOGPL
 
récursivité algorithmique et complexité algorithmique et Les algorithmes de tri
récursivité algorithmique et complexité algorithmique et Les algorithmes de trirécursivité algorithmique et complexité algorithmique et Les algorithmes de tri
récursivité algorithmique et complexité algorithmique et Les algorithmes de tri
 
Algorithme distribués pour big data saison 2 @DevoxxFR 2016
Algorithme distribués pour big data saison 2 @DevoxxFR 2016Algorithme distribués pour big data saison 2 @DevoxxFR 2016
Algorithme distribués pour big data saison 2 @DevoxxFR 2016
 
INF120 - Algo DUT SRC1 - Cours 2 (2012)
INF120 - Algo DUT SRC1 - Cours 2 (2012)INF120 - Algo DUT SRC1 - Cours 2 (2012)
INF120 - Algo DUT SRC1 - Cours 2 (2012)
 
Chapitre 2 complexité
Chapitre 2 complexitéChapitre 2 complexité
Chapitre 2 complexité
 
la complexité des algorithmes en toute simplicité
la complexité des algorithmes en toute simplicitéla complexité des algorithmes en toute simplicité
la complexité des algorithmes en toute simplicité
 
Video
VideoVideo
Video
 
transparents-Algo-complexite.pdf
transparents-Algo-complexite.pdftransparents-Algo-complexite.pdf
transparents-Algo-complexite.pdf
 
Planification
Planification Planification
Planification
 
Traitement des données massives (INF442, A2)
Traitement des données massives (INF442, A2)Traitement des données massives (INF442, A2)
Traitement des données massives (INF442, A2)
 
Resumer sur les tris
Resumer sur les trisResumer sur les tris
Resumer sur les tris
 
Algorithmique Amp Programmation (R Sum
Algorithmique  Amp  Programmation (R SumAlgorithmique  Amp  Programmation (R Sum
Algorithmique Amp Programmation (R Sum
 
Méthode pert
Méthode pertMéthode pert
Méthode pert
 
chap2 algorithme de recherche.pdf
chap2 algorithme de recherche.pdfchap2 algorithme de recherche.pdf
chap2 algorithme de recherche.pdf
 

Recently uploaded

Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
ikospam0
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
AmgdoulHatim
 

Recently uploaded (19)

L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLE
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiques
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcours
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
 
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesNeuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
python-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdfpython-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdf
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 

Les algorithmes avancés

  • 1. 1) Tours de Hanoï 2) Tri rapide 3) Huit dames (voir p234-240) 4) Voyageur de commerce (voir livre p226-233) I. Introduction Ce chapitre traite des problèmes un peu plus complexes que les problèmes classiques déjà vus comme de nouvelles méthodes de recherche, de tri, d'approximation ou d'optimisation. Les algorithmes avancés utilisent le principe "diviser pour régner (divide to conquer) ". II. Tours de Hanoï 1) Activité Charger l’URL : http://www.toupty.com/jeutourshanoi.html Charger l’URL : http://javaboy.free.fr/tourdehanoi/index.htm Ouvrir le fichier C:avancéhanoi.exe 2) Principe : Le but du problème est de passer en un minimum de déplacements ces N disques du piquet 1 sur le piquet 3 en s'aidant du piquet 2 qui peut servir à des stockages intermédiaires de disques. Les règles suivantes doivent être respectées : • on ne peut déplacer qu'un seul disque à la fois, • un disque peut être déplacé d'un des trois piquets sur l'un des deux autres, • un disque ne peut être placé que sur le sol ou sur un disque de diamètre supérieur. 1 2 3 1
  • 2. 3) Application Ecrire un programme modulaire en PASCAL, qui saisit N disques (1<=N<=64), affiche les déplacements effectués.  Analyse du programme principal : 2) Résultat = Proc Hanoi (n, 1, 3, 2) 1) N = proc saisie (n)  Analyse de la procédure Hanoi : DEF PROC Hanoi (n, depart, but, inter: entier) Résultat= Hanoi 1) Hanoi =[ ] Si N =1 alors Ecrire (''déplacer un disque de '',depart , '' en '', but) sinon Proc hanoi ( n-1, depart, inter, but ) Ecrire (''déplacer un disque de '', depart , '' en '', but) Proc hanoi ( n-1, inter, but, depart ) Fin Si 2
  • 3. III. Tri rapide 1. Activité 2. principe C’est un algorithme considéré comme l'un des plus rapides, et des plus efficaces. C’est une méthode de tri récursive basée sur la méthode de conception "diviser pour régner".  L’idée de l’algorithme est très simple ; Etant donné un vecteur d’éléments à trier : 1. Choisir un élément arbitraire du tableau, que nous appelons élément pivot. 2. Réorganiser les éléments du tableau de sorte que tous les éléments inférieurs au pivot soient à gauche du pivot, les éléments supérieurs au pivot soient à droite du pivot, ceux qui sont égaux soit à gauche soit à droite et le pivot choisi entre les deux. Cette opération s’appelle partition. 3. Trier récursivement la partie gauche et la partie droite du tableau jusqu’à obtenir uniquement des sous tableaux à un seul élément. Comment choisir le pivot ? Nous pouvons choisir comme pivot l’élément situé au milieu de la partie à trier. Comme on peut choisir le premier élément. 3) Application Ecrire un programme modulaire en Pascal qui remplit un vecteur T, par N entiers aléatoirement (-100<=T[i]<=100; 5<=N<=50), le trier selon la méthode de tri rapide puis l’afficher.  Analyse du programme principal : 3) Résultat= Proc affiche (T, n) 2) T= Proc tri_rapide (T, 1, n) 1) (T, n) = Proc remplir (T, n)  Analyse de la procédure Tri_rapide DEF PROC Tri_rapide (var T: Tab; g , d: entier) Résultat = T 1) T= [ ] Si g<d alors proc partition (T, g, d, indpivot) proc tri_rapide (T , g , indpivot-1) proc tri_rapide (T , indpivot+1 , d) Fin Si 3
  • 4. Analyse de la procédure Partition DEF PROC Partition (var T: Tab; g, d : entier ; var indpivot: entier) 1) T, indpivot= i  g+1 Répéter pivot  T[g] Tant que (i < indpivot) et (t[i] < pivot) Faire indpivot  d ii+1 Fin tant que Tant que (i <=indpivot) et (pivot <= T[indpivot]) Faire indpivot  indpivot - 1 Fin tant que Si i<indpivot alors proc Permut (T[i], T[indpivot]) ii+1 Indpivot  indpivot - 1 Fin si Jusqu’à (indpivot<=i) Proc Permut (T[g], T[indpivot]) 4
  • 5. IV. Huit dames 1. Activité 1. Charger le fichier C:avancéhuitdames.exe 2. Fixer le nombre de dames à 4, chercher une distribution possible des dames sur l’échiquier. 3. Charger la page web: http://jellevy.yellis.net/Classes/Activite/recree_8reines.htm 4. Charger la page web: http://www.echecsetmaths.com/echec/prob/8reines/8reines.htm 2. Principe Le problème des huit dames (dit aussi problème des huit reines), consiste à placer huit reines d’un jeu d’échecs sur un échiquier de 8x8 cases sans que les dames ne puissent se menacer mutuellement.  Deux dames ne devraient jamais partager la même ligne ou la même colonne ou la même diagonale. 3. Constatations Principe du Backtracking Je peux tomber dans un cas de blocage !!! (Retour sur trace) 4. Définition Le Backtracking, ou retour sur trace consiste à revenir en arrière sur des décisions prises à fin de sortir d’une situation de blocage. 5. Application Tester la solution proposée dans le livre page 239 V. Voyageur de commerce 1. Activité Charger l’URL : http://interstices.info/jcms/c_37686/le-probleme-du-voyageur-de-commerce 2. Principe : Étant donné n points (des « villes ») et les distances séparant chaque point, trouver un chemin de longueur totale minimale qui passe exactement une fois par chaque point et revienne au point de départ. 3. Application Tester la solution proposée dans la livre page 231 5