\n"," "]},{"cell_type":"markdown","metadata":{},"source":["## CALCUL D´UN MOYENNE "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["marta= [10, 15, 11, 18, 7, 12, 13, 16, 18]\n","tiago= [8, 11, 12, 14, 10, 9, 15, 12, 11,13,18]"]},{"cell_type":"markdown","metadata":{},"source":[" *Complétez la fonction `moyenne(liste)` qui permet de calculer la moyenne d´un élève arrondie au dixième.*"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# code\n","def moyenne(liste):\n"," pass"]},{"cell_type":"markdown","metadata":{},"source":[" Affichez les moyennes de Marta et Tiago:"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# Marta"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# Tiago"]},{"cell_type":"markdown","metadata":{},"source":[" *Tiago a obtenu un **14** et Marta un **16***. Comment ajouter ces deux nouvelles notes aux listes?"]},{"cell_type":"code","execution_count":null,"metadata":{},"outputs":[],"source":["# code"]},{"cell_type":"markdown","metadata":{},"source":[" *Le professeur décide de cocher la case \"enlever la plus mauvaise note\". Complétez la fonction `indexMini` puis affichez la moyenne corrigée de Marta et Tiago.*"]},{"cell_type":"markdown","metadata":{},"source":["Consultez le fonctionnement de l´algorithme sur mon site: \n","http://www.fredpeuriere.com/NSI/algos-1/algorithmes-illustres/min.html"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# la fonction:\n","def indexMini(liste): \n"," \"\"\"Retourne l´indice \n"," du plus petit élément de la liste\"\"\" \n"," pass"]},{"cell_type":"code","execution_count":null,"metadata":{},"outputs":[],"source":["# Indice de la plus mauvaise note de MARTA"]},{"cell_type":"code","execution_count":null,"metadata":{},"outputs":[],"source":["# Indice de la plus mauvaise note de Tiago"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# Moyenne corrigée de MARTA"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# Moyenne corrigée de TIAGO"]},{"cell_type":"markdown","metadata":{},"source":["## DICTIONNAIRES: UN LYCÉE"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["dico = {\"Nom\": \"Charles Lepierre\", \"Pays\": \"Portugal\", \"Ville\": \"Lisbonne\"}"]},{"cell_type":"markdown","metadata":{},"source":[" *Quelle est la valeur de dico[1] ?*"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# va retourner une erreur...\n"]},{"cell_type":"markdown","metadata":{},"source":[" *Quelle est la valeur de `dico[\"Ville\"]` ?*"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test"]},{"cell_type":"markdown","metadata":{},"source":[" *Quelle instruction permet de modifier le dictionnaire de façon à ce que sa nouvelle valeur soit:* `{\"Nom\": \"Charles Lepierre\", \"Pays\": \"Portugal\", \"Ville\": \"Lisbonne\",\"Éleves\":2150}`? "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# reponse"]},{"cell_type":"markdown","metadata":{},"source":[" *Quels sont les affichages possibles lors de l’exécution du code suivant ?* "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":true},"outputs":[],"source":["# test\n","\n","for i in dico.keys():\n"," print(i)"]},{"cell_type":"markdown","metadata":{},"source":[" *Quels sont les affichages possibles lors de l’exécution du code suivant ?* "]},{"cell_type":"code","execution_count":null,"metadata":{},"outputs":[],"source":["# test\n","\n","for i in dico.values():\n"," print(i)"]},{"cell_type":"markdown","metadata":{},"source":[" *Quels sont les affichages possibles lors de l’exécution du code suivant ?* "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":true},"outputs":[],"source":["# test\n","\n","for i in dico.items():\n"," print(i) "]},{"cell_type":"markdown","metadata":{},"source":["\n","## COMPREHENSIONS ET STRUCTURES IMBRIQUEES "]},{"cell_type":"markdown","metadata":{},"source":[" Si liste désigne la liste `[1, [2, 3], [4, 5], 6, 7]`, que vaut `len(liste)` ? "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["liste=[1, [2, 3], [4, 5], 6, 7]\n","# test"]},{"cell_type":"markdown","metadata":{},"source":[" Comment afficher la valeur `5` de la liste?"]},{"cell_type":"code","execution_count":null,"metadata":{},"outputs":[],"source":["#code"]},{"cell_type":"markdown","metadata":{},"source":[" Que vaut `[2 * n for n in range(5)]` ? "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test"]},{"cell_type":"markdown","metadata":{},"source":[" Supposons que `liste = [-5, 2, 3, -7, 42, 7]`. Que vaut `[n for n in liste if n > 0]` ? "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test"]},{"cell_type":"markdown","metadata":{},"source":["\n","\n","## CARRÉ MAGIQUE"]},{"cell_type":"markdown","metadata":{},"source":[" *Un carré est magique lorsque la somme de ces lignes, colonnes et diagonales sont égales* "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["carre3=[\n"," [2,7,6],\n"," [9,5,1],\n"," [4,3,8],\n","]\n","\n","carre4=[\n"," [4,5,11,14],\n"," [15,10,8,1],\n"," [6,3,13,12],\n"," [9,16,2,7]\n","]"]},{"cell_type":"markdown","metadata":{},"source":["\n","> Quelle est la valeur de `len(carre4)` ? \n","> Quelle est la valeur de `carre3[0][2]`? \n","> Quelle instruction permet de récupérer la valeur 3 de `carre4` ?\n",""]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# tests"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["def sommeLigne(carre,n):\n"," \"\"\"carre est un tableau carré de nombres\n"," n est un nombre entier\"\"\"\n"," somme=0\n"," for i in carre[n]:\n"," somme+=i\n"," return somme\n"]},{"cell_type":"markdown","metadata":{},"source":[" Que vaut `sommeLigne(carre4, 2)` ? À quoi sert cette fonction ?"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test avec le carre3, première ligne\n","sommeLigne(carre3, 0)"]},{"cell_type":"markdown","metadata":{},"source":[" Écrire le code d’une fonction `sommeDesLignes` qui prend un carré en paramètre et qui vérifie que les sommes des nombres de chaque ligne sont égales."]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# réponse"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test avec le carre3"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test avec le carre4"]},{"cell_type":"markdown","metadata":{},"source":[" Proposer le code d’une fonction `sommeColonne` qui prend un carré en paramètre, ainsi que le numéro d’une colonne, et qui renvoie la somme des nombres de cette colonne. \n",""]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# réponse"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test avec le carre4, deuxième colonne\n"]},{"cell_type":"markdown","metadata":{},"source":[" Pour info, la somme des diagonales:"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["def sommeDiagonales (carre):\n"," somme1,somme2 = 0,0\n"," for i in range(len(carre)):\n"," somme1+=carre[i][i]\n"," somme2+=carre[i][len(carre)-1-i]\n"," return somme1,somme2"]},{"cell_type":"markdown","metadata":{},"source":["Testez la recherche du minimum dans une liste de 50 valeurs choisies au hasard entre 0 et 100:"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# code"]},{"cell_type":"markdown","metadata":{},"source":["\n","## DICTIONNAIRES: AU ZOO\n","Au jardim zoologico de Lisbonne, il y a 5 éléphants d’Asie, 17 écureuils d’Asie, 2 pandas d’Asie… On représente cet inventaire à l’aide d’un dictionnaire, de la façon suivante :"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":true},"outputs":[],"source":["zoo_Lisboa={ 'éléphant': ('Asie', 5), 'écureuil': ('Asie', 17), \n"," 'panda': ('Asie', 2), 'hippopotame': ('Afrique', 7), \n"," 'girafe': ('Afrique', 4)}"]},{"cell_type":"markdown","metadata":{},"source":["On représente de la même façon le zoo de Porto: "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":true},"outputs":[],"source":["zoo_Porto = { 'ours': ('Europe', 4), 'tigre': ('Asie', 7), \n"," 'girafe': ('Afrique', 11), 'hippopotame': ('Afrique', 3)} "]},{"cell_type":"markdown","metadata":{},"source":["On souhaite créer la fonction `plus_grand_nombre` qui prend un zoo en paramètre et qui renvoie le nom de l’animal le plus représenté dans ce zoo. Par exemple :\n","> plus_grand_nombre(zoo_Porto) --> 'girafe' \n","> plus_grand_nombre(zoo_Lisboa) --> 'écureuil'\n"]},{"cell_type":"markdown","metadata":{},"source":["a. Quel type de boucle peut-on envisager pour le code de cette fonction ?
\n","☐ `for i in dico.keys()` ☐ `for i in dico.values()` ☐ `for (i,j) in dico.items()` ☐ `Aucune boucle.`\n"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test"]},{"cell_type":"markdown","metadata":{},"source":[" b. Écrire et tester le code de cette fonction. "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# reponse"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test de la fonction"]},{"cell_type":"markdown","metadata":{},"source":[" 2. On souhaite créer une fonction `nombre_total` qui prend un zoo en paramètre ainsi que le nom d’un continent, et qui renvoie le nombre d’animaux originaires de ce continent dans le zoo. Par exemple : \n","> nombre_total(zoo_Porto, 'Afrique') --> 14 \n","> nombre_total(zoo_Lisboa, 'Asie') --> 24\n"]},{"cell_type":"markdown","metadata":{},"source":["a. Quel type de boucle peut-on envisager pour le code de cette fonction ?
\n","☐ `for i in dico.keys()` ☐ `for i in dico.values()` ☐ `for (i,j) in dico.items()` ☐ `Aucune boucle.`\n"]},{"cell_type":"code","execution_count":null,"metadata":{},"outputs":[],"source":["# test"]},{"cell_type":"markdown","metadata":{},"source":[" b. Écrire et tester le code de cette fonction. "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# reponse"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test de la fonction"]},{"cell_type":"markdown","metadata":{},"source":["3. On souhaite créer une fonction nombre qui prend un zoo en paramètre ainsi que le nom d’un animal, et qui renvoie le nombre de représentants de cet animal dans le zoo. \n","Par exemple : \n","> nombre(zoo_Porto, 'panda') --> 0 \n","> nombre(zoo_Lisboa, 'panda') --> 2\n"]},{"cell_type":"markdown","metadata":{},"source":["a. Quel type de boucle peut-on envisager pour le code de cette fonction ?
\n","☐ `for i in dico.keys()` ☐ `for i in dico.values()` ☐ `for (i,j) in dico.items()` ☐ `Aucune boucle.`\n"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test"]},{"cell_type":"markdown","metadata":{},"source":[" b. Écrire et tester le code de cette fonction. "]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# reponse"]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":false},"outputs":[],"source":["# test de la fonction"]}],"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"codemirror_mode":{"name":"ipython","version":3},"file_extension":".py","mimetype":"text/x-python","name":"python","nbconvert_exporter":"python","pygments_lexer":"ipython3","version":"3.11.1"}},"nbformat":4,"nbformat_minor":2}