From fae589d57aa7750a51afaf2cbb20905f3b0bd892 Mon Sep 17 00:00:00 2001 From: Tipragot Date: Thu, 7 Sep 2023 19:13:49 +0200 Subject: [PATCH] Finalisation des exercices --- .../{exercices.py => exercices_de_base.py} | 59 +++++++++---------- 1 file changed, 28 insertions(+), 31 deletions(-) rename Chapitre 1/{exercices.py => exercices_de_base.py} (73%) diff --git a/Chapitre 1/exercices.py b/Chapitre 1/exercices_de_base.py similarity index 73% rename from Chapitre 1/exercices.py rename to Chapitre 1/exercices_de_base.py index c1bf02a..1bb1003 100644 --- a/Chapitre 1/exercices.py +++ b/Chapitre 1/exercices_de_base.py @@ -1,40 +1,53 @@ # Exercice 1 + + def mini(L): """renvoie le minimum de la liste L.""" return min(L) -def mini(L): # Alternative + +def mini(L): # Alternative """renvoie le minimum de la liste L.""" - m = 999999999999999999999 - for v in l: - if v < m: m = v + m = None + for v in L: + if m is None or v < m: + m = v return m + # Exercice 2 -def occurences(n:int)-> list: + + +def occurences(n: int) -> list: """compte les occurences de chaque chiffre dans le nombre entré.""" occurrences = [0] * 10 for digit in str(n): occurrences[int(digit)] += 1 return occurrences -def occurences2(s:str) -> dict[str, int]: + +def occurences2(s: str) -> dict[str, int]: """compte les occurences de chaque caractère dans la string entrée.""" occurrences = {} for char in s: occurrences[char] = occurrences.get(char, 0) + 1 return occurrences -cette_phrase='gkjgkfjdfjtgmeek,beeknqel!kh56456fg535574ϛ Ϝ ϝ Ϟ‡ ˆ ϟ‡ Ϡ ϡ Ϣ ϣ Ϥ ϥ Ϧ ϧ Ϩϛ Ϝ ϝ Ϟ ϟ Ϡ ϡ ϛ Ϝ ϝ Ϟ ϟ Ϡ ϡ Ϣ ' -print(cette_phrase,occurences2(cette_phrase)) + +cette_phrase = 'gkjgkfjdfjtgmeek,beeknqel!kh56456fg535574ϛ Ϝ ϝ Ϟ‡ ˆ ϟ‡ Ϡ ϡ Ϣ ϣ Ϥ ϥ Ϧ ϧ Ϩϛ Ϝ ϝ Ϟ ϟ Ϡ ϡ ϛ Ϝ ϝ Ϟ ϟ Ϡ ϡ Ϣ ' +print(cette_phrase, occurences2(cette_phrase)) + # Exercice 3 -def repet(liste:list)-> bool : + + +def repet(liste: list) -> bool: """renvoie True s'il y a au moins une répétition dans la liste entrée, renvoie False sinon.""" return len(set(liste)) != len(liste) -def repet(liste:list)-> bool : + +def repet(liste: list) -> bool: """renvoie True s'il y a au moins une répétition dans la liste entrée, renvoie False sinon.""" occurences = {} @@ -45,16 +58,17 @@ def repet(liste:list)-> bool : return False -def repet2(texte:str)-> (bool, dict) : +def repet2(texte: str) -> (bool, dict): """renvoie de plus la liste des répétitions avec les effectifs. Si un caractère ou un motif apparait x fois, avec x > 1, on convient qu'il y a (x-1) répétitions.""" return repet(texte), occurences2(texte) -phrase='gkjgkfjdfjtgmeek,beeknqel!kh56456fg535574' # Exercice 4 -def fusion(liste1:list,liste2:list)-> list : + + +def fusion(liste1: list, liste2: list) -> list: """liste1 et liste2 sont déjà triées croissantes. Renvoie liste_fusion qui est la concaténation ORDONNEE des deux listes""" liste_fusion = [] @@ -71,21 +85,4 @@ def fusion(liste1:list,liste2:list)-> list : return liste_fusion -print(fusion([1,5,8,9,13,15],[2,5,6,7,100])) - - - - - - - - - - - - - - - - - +print(fusion([1, 5, 8, 9, 13, 15], [2, 5, 6, 7, 100]))