|
|
@ -1,6 +1,14 @@ |
|
|
# https://82.96.134.49/[...] |
|
|
# https://82.96.134.49/[...] |
|
|
import tkinter as tk |
|
|
import tkinter as tk |
|
|
|
|
|
|
|
|
|
|
|
def graduations(plusGrand): |
|
|
|
|
|
"""crée des graduations sur le coté du caneva""" |
|
|
|
|
|
graduations = [0,plusGrand*0.25,plusGrand*0.5,plusGrand*0.75,plusGrand] |
|
|
|
|
|
caneva.create_text(5,7,text=graduations[4]) |
|
|
|
|
|
caneva.create_text(155,7,text='AA') |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def separerListe(nombres): |
|
|
def separerListe(nombres): |
|
|
"""Fonction permettant de séparer une chaine de caractere et de convertir ses elements en |
|
|
"""Fonction permettant de séparer une chaine de caractere et de convertir ses elements en |
|
|
nombres entiers et utilise la fonction plusGrand pour trouver le plus grand nombre |
|
|
nombres entiers et utilise la fonction plusGrand pour trouver le plus grand nombre |
|
|
@ -12,23 +20,15 @@ et renvoie 1 si la liste fait plus de 10 nombres.""" |
|
|
lstInt += [int(nombreTempo)] |
|
|
lstInt += [int(nombreTempo)] |
|
|
if i+1>10: |
|
|
if i+1>10: |
|
|
return lstInt , plusGrand(lstInt) , 10 , 1 |
|
|
return lstInt , plusGrand(lstInt) , 10 , 1 |
|
|
return lstInt , plusGrand(lstInt) , len(lstInt) , 0 |
|
|
return lstInt , len(lstInt) , 0 |
|
|
|
|
|
|
|
|
def plusGrand(lst): |
|
|
|
|
|
"""Fonction permettant de trouver le plus grand nombre d'une liste de taille |
|
|
|
|
|
maximum 10.""" |
|
|
|
|
|
maxint = lst[0] |
|
|
|
|
|
for i in range(1,len(lst)): |
|
|
|
|
|
if maxint<lst[i]: |
|
|
|
|
|
maxint = lst[i] |
|
|
|
|
|
return maxint |
|
|
|
|
|
|
|
|
|
|
|
def validerNombres(): |
|
|
def validerNombres(): |
|
|
"""Fonction permettant de créer les rectangles proportionnels aux nombres |
|
|
"""Fonction permettant de créer les rectangles proportionnels aux nombres |
|
|
donnés par l'utilisateur.""" |
|
|
donnés par l'utilisateur.""" |
|
|
caneva.delete("all") |
|
|
caneva.delete("all") |
|
|
erreur.configure(text="") |
|
|
erreur.configure(text="") |
|
|
nombres_separe, maxNombres , longueurListe, plusDe10= separerListe(nombres.get()) |
|
|
nombres_separe, longueurListe, plusDe10= separerListe(nombres.get()) |
|
|
|
|
|
maxNombres = max(nombres_separe) |
|
|
if plusDe10==1: |
|
|
if plusDe10==1: |
|
|
erreur.configure(text="Vous avez inséré plus que 10 nombres,"\ |
|
|
erreur.configure(text="Vous avez inséré plus que 10 nombres,"\ |
|
|
" seul 10 sont affichés") |
|
|
" seul 10 sont affichés") |
|
|
@ -43,14 +43,19 @@ donnés par l'utilisateur.""" |
|
|
couleur = '#fc5555' |
|
|
couleur = '#fc5555' |
|
|
caneva.create_rectangle(40*i+30,300-300*int(nombres_separe[i])/maxNombres |
|
|
caneva.create_rectangle(40*i+30,300-300*int(nombres_separe[i])/maxNombres |
|
|
,40*i+50,300,fill=couleur) |
|
|
,40*i+50,300,fill=couleur) |
|
|
|
|
|
graduations(maxNombres) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fenetre = tk.Tk() |
|
|
fenetre = tk.Tk() |
|
|
fenetre.geometry('460x440') |
|
|
fenetre.geometry('500x440') |
|
|
fenetre['bg'] = "#fffcfc" |
|
|
fenetre['bg'] = "#fffcfc" |
|
|
fenetre.title('Graphique proportionnel de 10 nombes - Sujet n°6') |
|
|
fenetre.title('Graphique proportionnel de 10 nombes - Sujet n°6') |
|
|
|
|
|
|
|
|
caneva = tk.Canvas(fenetre,height = 300,width=440,bg="#fffcfc") |
|
|
caneva = tk.Canvas(fenetre,height = 300,width=440,bg="#fffcfc") |
|
|
caneva.grid(column = 1, columnspan = 4,padx=10,pady=10) |
|
|
|
|
|
|
|
|
caneva.grid(column = 1, columnspan = 4,padx=30,pady=10,row = 0,rowspan = 4) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
label = tk.Label(fenetre, text = 'Entrez au maximum 10 nombres entiers strictement '\ |
|
|
label = tk.Label(fenetre, text = 'Entrez au maximum 10 nombres entiers strictement '\ |
|
|
'positifs' ,bg = "#fffcfc",font='Noto 10') |
|
|
'positifs' ,bg = "#fffcfc",font='Noto 10') |
|
|
|