Bonjour ! J’espère que quelqu’un pourra m’aider svp !
Au zoo de Beauval, on a compté 5 éléphants d'Asie, 17 écureuils d'Asie, 2 pandas d'Asie, 7 hippopotames d'Afrique et 4 girafes d'Afrique. On représente cet inventaire par un dictionnaire de la façon suivante:
zoo_Beauval = {
'éléphant : ('Asie',5),
'écureuil' : ('Asie',17),
'panda' : ('Asie',2),
'hippopotame' : ('Afrique',7),
'girafe' : ('Afrique',4)}
1) Représentez de même l'inventaire du zoo de La Flèche par un dictionnaire nommé zoo_LaFleche, sachant que l'inventaire de ce zoo est le suivant : 4 ours d'Europe, 7 tigres d'Asie, 11 girafes d'Afrique et 3 hippopotames d'Afrique.
2) Quel est le type de zoo_Beauval['éléphant'] ?
3) Écrire une fonction PlusGrandNombre() qui prend un zoo en paramètre et qui renvoie le nom de l'animal le plus représenté dans ce zoo. Faire alors afficher quel est l'animal le plus représenté dans chacun des 2 Zoos.
4) Écrire une fonction NombreAnimauxContinent() qui prend un zoo et un continent en paramètres et qui renvoie le nombre d'animaux provenant de ce continent. Faire alors afficher le nombre d'animaux d'Asie du zoo de Beauval et le nombre d'animaux d'Afrique du zoo de La Flèche.
5) Écrire une fonction NombreAnimal() qui prend en paramètre un zoo et un animal et qui renvoie le nombre de représentants de cet animal dans le zoo. Faire alors afficher le nombre de pandas du zoo de La Flèche et du zoo de Beauval.

Mercii !


Sagot :

Bonjour,

zoo_Beauval = {

   'éléphant': ('Asie', 5),

   'écureuil': ('Asie', 17),

   'panda': ('Asie', 2),

   'hippopotame': ('Afrique', 7),

   'girafe': ('Afrique', 4)}

#Question 1

zoo_LaFleche = {

   'ours': ('Europe', 4),

   'tigre': ('Asie', 7),

   'girage': ('Afrique', 11),

   'hippopotame': ('Afrique', 3)}

#Question 2

zoo_Beauval['éléphant'] = ('Asie', 5)

C'est donc un tuple.

Pour information, il suffit de faire print(type(zoo_Beauval['éléphant'])) et tu obtiens <class 'tuple'> et donc tu as directement la réponse.

#Question 3

def PlusGrandNombre(zoo):

   maxi = 0

   animal_maxi = ''

   for animal in zoo.keys():

       if zoo[animal][1] > maxi:

           animal_maxi = animal

           maxi = zoo[animal][1]

   return animal_maxi

print(PlusGrandNombre(zoo_Beauval)) => "écureuil"

print(PlusGrandNombre(zoo_LaFleche)) => "girafe"

#Question 4

def NombreAnimauxContinent(zoo, continent):

   nombre_animaux = 0

   for valeur in zoo.values(): #On ne récupère que les tuples, on s'en moque du nom des animaux.

       if valeur[0] == continent:

           nombre_animaux += valeur[1]

   return nombre_animaux

print(NombreAnimauxContinent(zoo_Beauval, "Asie")) => 24

print(NombreAnimauxContinent(zoo_LaFleche, "Afrique")) => 14

#Question 5

def NombreAnimal(zoo, animal):

   try: #On renvoie le nombre si l'animal existe.

       return zoo[animal][1]

   except: #Cet animal n'est pas dans le zoo.

       return 0

print(NombreAnimal(zoo_Beauval, "panda")) => 2

print(NombreAnimal(zoo_LaFleche, "panda")) => 0

Bonne journée.