Cours avancé de développement Python
Chapitre
>
Niveau
Modules Mathématiques
Module Mathématique Étendu
Objectif
Calculer les nouvelles extensions de terrain de la ferme en utilisant davantage de fonctions importées du module math.
De l'autre côté du pont, l'annexe dispose de quelques bureaux utilisés pour arpenter les terrains non incorporés qui relient deux parties différentes de la ferme. Ici, nous allons trouver certaines dimensions et mesures de terrain, il serait judicieux de les trier et de documenter les données. Vous pouvez accomplir cela en utilisant le module math, dans ce niveau nous serons introduits à un nouvel ensemble de fonctions que nous pouvons utiliser pour traiter les données. Vous utilisez le même import math et math. avant les fonctions pour utiliser cet ensemble :
math.radians(): Convertit des degrés en radians / angles.math.floor(): Arrondit un nombre vers le bas à un nombre de base.math.ceil(): Arrondit un nombre vers le haut à un nombre supérieur.math.atan2(): Retourne l'arc tangente entre deux nombres en radians.math.isclose(): Vérifie si deux nombres sont proches l'un de l'autre, renvoie vrai/faux.math.fsum(): Additionne des nombres à virgule flottante (décimaux) ensemble à partir d'une liste ou d'un itérable.math.dist(): Vérifie la distance entre deux points, les valeurs doivent être des listes ou itérables.
Commencez par rassembler les données brutes des graphiques en vous rendant aux marques en forme de X clair sur le tapis rouge et bleu. Utilisez la fonction read() pour identifier les dimensions brutes nécessaires pour prendre les mesures. Ces mesures sont déjà stockées dans quatre constantes de variables nommées : red_x, red_y, blue_x et blue_y.
Une fois que les deux ensembles de données ont été identifiés, rendez-vous à la marque en forme de X sombre sur le tapis orange et faites face au bureau. Utilisez math.radians() et math.ceil() pour convertir les variables blue_x et blue_y en radians et les arrondir vers le haut. Utilisez float() pour vous assurer que les constantes sont des décimales pouvant être modifiées. Par exemple, pour la variable blue_x : convertissez en radians avec blue_x = math.radians(float(blue_x)) et arrondissez la valeur avec blue_x = math.ceil(float(blue_x)). Faites de même pour blue_y à cette marque en forme de X, une fois terminé, utilisez la fonction pré-écrite write() et ajoutez les variables blue_x et blue_y afin de les consigner.
Rendez-vous à la marque en forme de X sombre sur le tapis vert et utilisez math.radians() et math.floor() pour convertir les variables red_x et red_y en radians et les arrondir vers le bas. Par exemple, pour la variable red_x : convertissez en radians avec red_x = math.radians(red_x) et arrondissez la valeur avec red_x = math.floor(red_x). Faites de même pour red_y à cette marque en forme de X, une fois terminé, utilisez la fonction pré-écrite write() et ajoutez les variables red_x et red_y afin de les consigner.
Rendez-vous à la marque en forme de X doré et faites face au bureau, ici nous allons créer deux nouvelles variables, data_a et data_b. Ici, nous allons stocker les arcs tangents de chaque ensemble en utilisant la fonction math.atan2. Pour data_a, nous utilisons les variables blue_x et blue_y pour alimenter la fonction, comme ceci : data_a = math.atan2(blue_x,blue_y). Pour data_b, faites de même mais avec red_x et red_y. Une fois terminé, utilisez la fonction pré-écrite write() et ajoutez les variables data_a et data_b afin de les consigner.
Maintenant que les bureaux inférieurs ont été traités, rendez-vous à la marque en forme de X sombre sur le tapis violet, créez une variable nommée comparison et utilisez-la avec la fonction math.isclose(), en utilisant data_a et data_b comme arguments, comme ceci : comparison = math.isclose(data_a, data_b). Utilisez la fonction pré-écrite write() avec la variable comparison à cette marque en forme de X.
Rendez-vous à la marque en forme de X sur le tapis blanc, créez une liste nommée data_list et ajoutez data_a et data_b dans cet ordre. Créez une variable nommée total et utilisez la fonction math.fsum() avec data_list comme argument, comme ceci : total = math.fsum(data_list). Utilisez la variable total avec la fonction pré-écrite write() à cette marque en forme de X.
Rendez-vous à la marque en forme de X sombre sur le tapis jaune et faites face au bureau, convertissez data_a et data_b en valeurs de liste individuelles, par exemple pour data_a faites : data_a = [data_a]. Faites de même pour data_b afin de convertir les deux variables en itérables pour une utilisation avec la fonction math.dist(). Créez une variable nommée distance et utilisez-la pour stocker la valeur de math.dist(), en utilisant data_a et data_b comme arguments. Utilisez la variable distance avec la fonction pré-écrite write() afin de compléter le niveau.