From 685a5f75f63d483d09a593ec69efad882a63a34e Mon Sep 17 00:00:00 2001 From: Denise sur Lya Date: Mon, 15 Feb 2021 16:54:33 +0100 Subject: =?UTF-8?q?am=C3=A9lioration=20de=20la=20grille,=20b=C3=AAta?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gestion_unites.py | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 60 insertions(+), 1 deletion(-) (limited to 'gestion_unites.py') diff --git a/gestion_unites.py b/gestion_unites.py index 8fcb1ad..b97d90b 100644 --- a/gestion_unites.py +++ b/gestion_unites.py @@ -7,7 +7,7 @@ from gestion_erreurs import * ##################### outils pour affichage et choix de l'unité def choix_unite(maxi): - """ en fonction de l'âge maxi, on choisit une unité pertinente : jours, mois, année""" + """ en fonction de l'âge maxi, on choisit une unité pertinente : jours, semaine, mois, année""" if maxi<40: return "jours" elif maxi <100: @@ -17,6 +17,65 @@ def choix_unite(maxi): else: return "années" +def choix_echelle_data(typedonnees, donneemax): + """ en fonction du type de données et du maxi (on suppose qu'on part à 0), + on choisit un intervalle raisonnable + On renvoie le couple des pas (majeur, mineur) + (0,0) en cas de problème avec le typedonnnes """ + + if typedonnees not in CONFIG["liste_typedonnees"]: + print("Type de données non valide : "+typedonnees) + return (0,0) + + if typedonnees == "poids": + if donneemax>15: + return (5,1) + elif donneemax > 10: + return (2,1) + else: + return (1,0.2) + if typedonnees == "taille": + if donneemax>100: + return (10,2) + else: + return (5,1) + +def choix_echelle_temps(unite, tempsmaxi): + """ en fonction de l'unité voulue et du temps maximal (donné dans l'unité), + on choisit un intervalle raisonnable entre les pas. + On renvoie le couple des pas (majeur, mineur). + (0,0) en cas de problème avec l'unité + On met 0 en 2e arg si pas de grille secondaire""" + if unite not in CONFIG["liste_unites"]: + print("Unité non valide ! "+unite) + return (0,0) + + if unite=="jours": + if tempsmaxi > 60: # pourquoi mettre en jours ? + return (30,1) + elif tempsmaxi >20: + return (7,1) + else: + return (1,0) + if unite=="semaines": + if tempsmaxi >50: + return (5,1) + elif tempsmaxi > 15: + return (2,1) + else: + return (1,1/7) # On met en jours + + if unite=="mois": + if tempsmaxi > 30: + return (2,1) + elif tempsmaxi > 10: + return (1,0) + else: + return (1,0.25) # on met en semaines + + if unite=="années": + return (1,1/12) # années / mois + def convertitunite(jours,unite,liste_err): """ convertit des jours à l'unité voulue renvoie des float""" -- cgit v1.2.3