Exercices

Chapitre 1: Modules et documentation

Utilisation du module math

Donner deux façons d'importer la fonction sqrt() du module math et de calculer ensuite la racine carrée de 2.

Création d'un projet sur les nombres premiers

Cahier des charges:

Votre projet doit contenir 4 modules:

  • premier.py: module contenant quatre fonctions qui permettent de savoir si un nombre est premier telles que décrites ici.

  • eratosthene.py: module permettant la génération de nombres premiers par le crible d'Eratosthène. Ce module devra être importé dans le module premier.py pour implémenter le 4e algorithme proposé dans l'article Wikipédia.

  • test_premier.py: module qui importe les fonctions définies dans premier.py et qui vérifie que toutes les fonctions de test de primalité définies dans le module premier.py ont des résultats justes. On pourra utiliser cet article Wikipédia ainsi que ces références pour trouver des nombres premiers à tester.

    Ne pas oublier de tester des nombres non premiers

    Facultatif, vous pouvez également chronométrer le temps d'exécution des tests grâce au module time de python et afficher les résultats en cas de succés.

  • main.py: le module principal destiné à l'utilisateur. Ce programme demande à l'utilisateur de choisir un nombre entier et un algorithme, et lui indique si ce nombre est premier ou pas.

    Attention: Le programme devra recommencer tant que l'utilisateur le souhaite sans être reexécuté à chaque fois.

Le projet doit être documenté:

  • Toutes les fonctions ont une Docstring.
  • Toutes les modules ont une Docstring.
  • Facultatif: Ajouter un fichier README qui explique la nature du projet et les détails pratiques comme: comment lancer le programme principal, comment lancer les tests...