diff --git a/PJ/README.md b/PJ/README.md index 15cc144d74ad1a50f096b4519746e5f633d4933e..402037b4f51ded51d6273f3f5160f0bcd1324cc1 100644 --- a/PJ/README.md +++ b/PJ/README.md @@ -3,5 +3,13 @@ Title:Projet Images Récurssives Author: Belkacemi Melissa --- #journal -6/3/2024: -lecture du sujet du projet et création du document images +6/3/2024: + +- lecture du sujet du projet +- création du document images + + +13/3/2024: + +- création du fichier couleur.py +- création du fichier bloc.py diff --git a/PJ/bloc.py b/PJ/bloc.py new file mode 100644 index 0000000000000000000000000000000000000000..949fa3c17e27a0f7d0c5df591cafa4fbe2581943 --- /dev/null +++ b/PJ/bloc.py @@ -0,0 +1,25 @@ +#Belkacemi Melissa +#13/03/2024 + +class Bloc: + """ une classe représentant des blocs + + """ + def __init__(self,couleur:tuple[int,int,int],pixel_hg:tuple[int,int],pixel_bd:tuple[int,int])->"Bloc": + """à_remplacer_par_ce_que_fait_la_fonction + + Précondition : + Exemple(s) : + $$$ b=Bloc((45,63,125),(120,23),(45,111)) + $$$ b.couleur + (45,63,125) + $$$ b.pixel_hg + (120,23) + $$$ b.pixel_bd + (45,111) + + """ + self.couleur=couleur + self.pixel_hg=pixel_hg + self.pixel_bd=pixel_bd + diff --git a/PJ/couleur.py b/PJ/couleur.py new file mode 100644 index 0000000000000000000000000000000000000000..b65f9f04ec2bfd49e6c9dd6a4fb5e853466729dc --- /dev/null +++ b/PJ/couleur.py @@ -0,0 +1,47 @@ +#Belkacemi Melissa +#13/03/2024 + +def couleur_moyenne(liste:list[tuple[int,int,int]])->tuple[int,int,int]: + """déterminer la couleur moyenne d'une liste de couleurs sous la forme (r,g,b) + + Précondition : len(liste)>0 r,v et b <=255 + Exemple(s) : + $$$ couleur_moyenne([(1,32,4)]) + (1,32,4) + $$$ couleur_moyenne([(2,32,4),(0,4,6)]) + (1,18,5) + $$$ couleur_moyenne([(2,32,4),(0,4,6),(8,5,4)]) + (3,13,4) + + """ + rouge=0 + vert=0 + bleu=0 + for elt in liste: + rouge+=elt[0] + vert+=elt[1] + bleu+=elt[2] + return (rouge//len(liste),vert//len(liste),bleu//len(liste)) + +def coul_sont_proches(coul1:tuple[int,int,int],coul2:tuple[int,int,int])->bool: + """Prend en paramètres deux couleurs (r1,v1,b1) et (r2,v2,b2) et + renvoie True si les distances entre r1 et r2, v1 et v2, et b1 et b2 + est inférieure à 10 + + Précondition : + Exemple(s) : + $$$ coul_sont_proches((145,145,130),(140,136,132)) + True + $$$ coul_sont_proches((45,45,30),(45,36,32)) + True + $$$ coul_sont_proches((40,45,32),(40,36,32)) + True + $$$ coul_sont_proches((45,45,30),(40,36,46)) + False + $$$ coul_sont_proches((10,45,30),(40,36,32)) + False + + """ + r1,v1,b1=coul1 + r2,v2,b2=coul2 + return (abs(r1-r2)<=10 and abs(v1-v2)<=10 and abs(b1-b2)<=10) \ No newline at end of file