Ressources du Congo

#TutorielPython3 : Apprendre à coder en Python #25. Scripts divers : Séquence # 3. Élément de réponse #4

25 Mars 2019 , Rédigé par Zamba Synkin Publié dans #Dico exquis anti-mystification, #Tech' Net & Code, #e-Learning, #Carte blanche à

Séquence #3 : Élément de réponse #3
Séquence #3 : Élément de réponse #3

 

 

 

 S O M M A I R E

  • Le module datetime 
    • La classe datetime.datetime
      • Les attributs year, month, day, hour, minute, second
  • La fonction native round

Prérequis : tous les tutoriels précédents

4. Une boutique Kinoise d'archivage des documents (feuille A4 ou autres papiers) propose la numérisation de tout document au tarif forfaitaire de 0,90€ l’unité. Le prix est réduit à 0,15€ pour une opération d’au moins 55 documents.

a) Que paiera-t-on pour la numérisation de 42 documents ? de 80 ? Et de 100 ?

Ecrire un script en Python qui demande au client le nombre de feuilles à numériser et affiche le prix TTC (Prix HT + TVA) à payer. TVA = 20%.

Le module datetime

D’après la Fondation Python Software, "le module datetime fournit des classes pour manipuler de façon simple ou plus complexe des dates et des heures. Bien que les calculs de date et d'heure sont gérés, l'implémentation est essentiellement tournée vers l'efficacité pour extraire des attributs pour les manipuler et les formater pour l'affichage."

 

Je reviendrai plus en détail sur ce module quand on va aborder la POO (programmation orientée objet). Mais, pour l'heure, pour le besoin de cet atelier, vous pouvez vous contenter de retenir simplement le fait que nous allons faire appel à la classe datetime.datetime, dont nous allons prendre les attributs suivants: année, mois, jour, heures, minutes, secondes. Dernière précision importante donnée par la même source : dans cette classe, on supposera qu'une journée est composée d'exactement "24*60*60 secondes (il n'y a pas ici de notion de "seconde bissextile").

 

Je vous propose de passer de ce pas au script. Après quoi, je vais l'exécuter. 

 Scripts divers : Séquence # 3. Élément de réponse #4
Scripts divers : Séquence # 3. Élément de réponse #4

Et que va réclamer l'automate pour 29 documents à numériser ? Je rappelle que  Prix TTC = Prix HT + TVA ou encore Prix TTC  = Prix HT (1 + Taux TVA). De cette dernière relation, j'ai déduit : Prix HT = Prix TTC (1+ Taux TVA) (ligne 18 du script).

Voyons le ticket qu'a imprimé l'automate.

 Scripts divers : Séquence # 3. Élément de réponse #4
Scripts divers : Séquence # 3. Élément de réponse #4

Et pour 50 exemplaires,

 Scripts divers : Séquence # 3. Élément de réponse #4
Scripts divers : Séquence # 3. Élément de réponse #4

On se verra réclamer ceci :

 Scripts divers : Séquence # 3. Élément de réponse #4
Scripts divers : Séquence # 3. Élément de réponse #4

Que remarquez-vous ? Eh bien, que le compte est bon. D'autant que la remise a été bien faite pour 20 (50-30) copies. Du reste, les détails demandés sont bien indiqués sur le ticket : Total HT, TVA, Total TTC.

À noter :

Toutes les  remarques que j'ai faites dans le billet précédent valent aussi pour celui-ci. La seule fonction nouvelle dont je me suis servi, ici, est le round(nombre, précision après la virgule). C'est l'arrondi (ou - la valeur approchée au centième) par excès. Ou comme ont dit aussi l'arrondi bancaire ! J'ai prévu un Atelier bonus dédié aux arrondis sous Python.

Lire la suite :  Apprendre à coder en Python. Scripts divers. Séquence # 4

Partager cet article

Commenter cet article