Copier le code suivant dans un notebook et complétez-le en ajoutant le prototype et les commentaires.
def division_euclidienne(a, b):
""" Ecrire la spécification de la fonction
Arguments
---------
Returns
-------
"""
# Ajouter des commentaires pour expliquer
if b <= 0 or a < 0 or type(a) != int or type(b) != int:
return -1
if a == 0:
return (0, 0)
# mes commentaires ici sur une ligne
r = a
q = 0
while (r >= 0):
r = r - b
q = q + 1
return (q-1, r+b)
# Tests
def test_division_euclidienne():
# Ajouter des commentaires pour expliquer
# quelles sont les vérifications effectuées
assert division_euclidienne(10, 2) == (5, 0)
assert division_euclidienne(2, 10) == (0, 2)
assert division_euclidienne(37, 3) == (12, 1)
# Verifications d'erreurs
assert division_euclidienne(-10, 7) == -1
assert division_euclidienne(10, -7) == -1
assert division_euclidienne(10.3, 4) == -1
assert division_euclidienne(11, 3.5) == -1
assert division_euclidienne(3, 0) == -1
# ...
assert division_euclidienne(0, 3) == (0, 0)
assert division_euclidienne(0, 0) == -1
# Lancement du test
test_division_euclidienne()
Créer et prototyper une fonction appartient() qui indique si un
élément est présent dans une
liste, et qui passe le jeu de tests suivants:
def test_appartient():
assert appartient(2, [5, 4, 1, 2, 3]) == True
assert appartient(6, [5, 4, 1, 2, 3]) == False
Compléter le jeu de tests avec des cas limites: liste vide, types de données différents…
Reprenez les algorithmes classiques du chapitre 1 de la partie 8: et les implémenter sous forme de fonctions prototypées et testées:
Attention: il conviendra d’écrire l’algorithme de parcours du tableau et de ne pas utiliser les
méthodes prédéfinies dans python max, min…
Rechercher dans la documentation du module random comment créer un dé
numérique qui renvoie de
façon équiprobable les valeurs entières de 1 à 6. Tester la fonction pour vérifier son
fonctionnement.
Rechercher dans la documentation du module math comment calculer le
logarithme en base 2 d’un
nombre. Tester la fonction pour vérifier son fonctionnement: p.ex $\log_2(16) = 4$; $\log_2(256)
= 8$. Expliquer ce que calcule cette fonction.
Rechercher dans la documentation de la librairie pandas plusieurs
méthodes permettant d’itérer
sur les valeurs d’une Dataframe.