module special.hermionne_classes#

Inheritance diagram of ensae_teaching_cs.special.hermionne_classes

Short summary#

module ensae_teaching_cs.special.hermionne_classes

Implémentation de la résolution de l’énigme d’Hermionne (Harry Potter tome 1) avec des classes. logique.

source on GitHub

Classes#

class

truncated documentation

Case

L’énigme d’Hermionne repose sur 7 cases disposées en ligne. Cette classe définit une case.

Enigme

description de l’énigme

Regle

L’énigme repose sur des règles. Chaque règle hérite de cette classe et implémente la méthode correcte qui vérifie …

Regle1

implémente la première règle

Regle2

implémente la seconde règle

Regle3

implémente la troisième règle

Regle4

implémente la quatrième règle

Regle5

implémente la cinquième règle

Functions#

function

truncated documentation

solution

parcourt toutes les configurations possibles et s’arrête à la première qui satsifait toutes les règles

Methods#

method

truncated documentation

__init__

constructeur

__init__

constructeur, définit les règles et les cases

__str__

affiche le contenu

__str__

affiche la solution

correcte

cette méthode doit être surchargée

correcte

vérifie qu’on a bien le bon nombre de types de fioles

correcte

vérifie le voisi n de reculer

correcte

correcte

correcte

resoud

résoud l’énigme en essayant toutes les combinaisons possibles, ce n’est pas la plus efficace des solutions

solution_correcte

détermine si une solution vérifie toutes les règles

Documentation#

Implémentation de la résolution de l’énigme d’Hermionne (Harry Potter tome 1) avec des classes. logique.

source on GitHub

class ensae_teaching_cs.special.hermionne_classes.Case(contenu)#

Bases : object

L’énigme d’Hermionne repose sur 7 cases disposées en ligne. Cette classe définit une case.

source on GitHub

constructeur

source on GitHub

__init__(contenu)#

constructeur

source on GitHub

__str__()#

affiche le contenu

source on GitHub

class ensae_teaching_cs.special.hermionne_classes.Enigme#

Bases : object

description de l’énigme

source on GitHub

constructeur, définit les règles et les cases

source on GitHub

__init__()#

constructeur, définit les règles et les cases

source on GitHub

__str__()#

affiche la solution

source on GitHub

resoud()#

résoud l’énigme en essayant toutes les combinaisons possibles, ce n’est pas la plus efficace des solutions

source on GitHub

solution_correcte()#

détermine si une solution vérifie toutes les règles

source on GitHub

class ensae_teaching_cs.special.hermionne_classes.Regle#

Bases : object

L’énigme repose sur des règles. Chaque règle hérite de cette classe et implémente la méthode correcte qui vérifie si la règle est vérifiée ou non.

source on GitHub

correcte(cases)#

cette méthode doit être surchargée

source on GitHub

class ensae_teaching_cs.special.hermionne_classes.Regle1#

Bases : Regle

implémente la première règle

source on GitHub

correcte(cases)#

vérifie qu’on a bien le bon nombre de types de fioles

source on GitHub

class ensae_teaching_cs.special.hermionne_classes.Regle2#

Bases : Regle

implémente la seconde règle

source on GitHub

correcte(cases)#

vérifie le voisi n de reculer

source on GitHub

class ensae_teaching_cs.special.hermionne_classes.Regle3#

Bases : Regle

implémente la troisième règle

source on GitHub

correcte(cases)#

source on GitHub

class ensae_teaching_cs.special.hermionne_classes.Regle4#

Bases : Regle

implémente la quatrième règle

source on GitHub

correcte(cases)#

source on GitHub

class ensae_teaching_cs.special.hermionne_classes.Regle5#

Bases : Regle

implémente la cinquième règle

source on GitHub

correcte(cases)#

source on GitHub

ensae_teaching_cs.special.hermionne_classes.solution()#

parcourt toutes les configurations possibles et s’arrête à la première qui satsifait toutes les règles

from ensae_teaching_cs.special.hermionne_classe import solution
print(solution())

source on GitHub