Apprendre les bases de Python pour réussir en N.S.I.
Open Source Your Knowledge, Become a Contributor
Technology knowledge has to be shared and made accessible for free. Join the movement.
Première : Analyse : Dérivation, études de fonctions, exponentielle et fonctions trigonométriques
Exercice n° : Taux d'accroissement
Difficulté : Facile
Ecrire une fonction qui prend en entrée une fonction et des réels
Exercice n° : Ecrire la liste des coefficients directeurs des sécantes pour un pas donné
Difficulté : Moyenne
Prérequis : Les listes
Programme officiel
On considère
Compléter la fonction ci-dessous pour qu'elle permette de calculer la liste des coefficients directeurs des sécantes (ou cordes) (AB) pour h variant de 1 à 0 avec un pas de 0,01.
Exercice n° : Donner la mesure principale d'un angle
Difficulté : Moyenne
Créer une fonction qui prend en entrée un angle en radian et donne en sortie la mesure principale ( dans
Exercice n° : Donner la mesure principale d'un angle (version améliorée I)
Difficulté : Moyenne
La version précédente donne une valeur approchée de la mesure principale. C'est pratique pour vérifier si le calcul qu'on a fait est juste mais ne nous donne pas la réponse comme on souhaiterait l'écrire sur notre feuille (c'est à dire de la forme
Pour améliorer un peu cela, il suffit de travailler avec le nombre qui multiplie
Exemple : si on cherche la mesure principale de
, on considère le nombre 13 π 4 , on lui retire autant de 2 que nécessaire pour être en -1 et 1. On trouve ici 13 4 . d f r a c 1 4
Donc si on part d'un angle quelconque, il faut d'abord le diviser par
Créer une fonction qui prend en entrée un angle et donne en sortie la mesure principale sous la forme
Exemple : Si l'angle donné en entrée est
(c'est à dire 10.995574287564276) alors en sorti, il devra afficher "-0.5pi" 7 π 2
Exercice n° : Donner la mesure principale d'un angle (version améliorée II)
Difficulté : Difficile
Reprenons la version précédente et tentons de l'améliorer encore un peu. On obtient dans la version précédente des résultats sous la forme "0.3333333333333333pi" mais on aimerait bien avoir plutôt "(1/3)pi". C'est ce que nous allons essayer de faire.
Pour cela, nous allons utiliser le module fractions
et plus précisément la fonction Fraction
de ce module qui va permettre de traduire un nombre décimal en fraction. Malheureusement si on tape directement str(Fraction(0.333333333333))
on n'obtient pas "1/3". Pour cela il faudra taper str(Fraction(0.333333333333).limit_denominator())
.
En utilisant str(Fraction(nombre).limit_denominator())
du module fractions
, créer une fonction qui donne la mesure principale d'un angle sous la forme "(fraction)pi".
Exemple : Si l'angle donné en entrée est
(c'est à dire 10.995574287564276) alors en sorti, il devra afficher "(-1/2)pi" 7 π 2
Exercice n° : Passage des coordonnées polaires à cartésiennes
Difficulté : Facile
Notion : Angles en radians
Pour étudier le mouvement d'un objet (une planète par exemple), il est parfois plus pratique de repérer cet objet par ses coordonnées polaires. On pourra trouver une présentation de ce système de coordonnées ainsi que des indications pour la suite sur cette page Wikipédia
Le but de cet exercice est de créer un programme qui traduit les coordonnées polaires en coordonnées cartésiennes.
- Pour cela, voici les formules de passage des coordonnées polaires
aux coordonnées cartésiennes( r , θ ) :( x , y )
-
Je rappelle que le cosinus et sinus en Python sont en radians. Pour les tests, les angles seront donnés en degrés ce qui signifie qu'il faudra les transformer en radians.
-
De plus, les résultats devront être arrondis à 3 chiffres après la virgule. Pour cela, on utilisera la fonction
round( nombre , nombre_de_chiffres_après_la_virgule)
. -
Enfin, les résultats x et y devront être affiché d'affilée, simplement séparés d'un espace. Pour cela, on utilisera simplement la syntaxe
print(x,y)
Entrée : Les valeurs de
et r (en degrés). θ
Sortie : Les coordonnées cartésiennes x et y correspondants aux coordonnées polaires données en entrée.
Exercice n° : Calcul de distances à vol d'oiseau
Difficulté : Facile
Notion : Angles en radians
Lorsqu'on regarde une carte de la Terre et que l'on souhaite aller d'un point à un autre, le plus court chemin n'est pas forcément la ligne droite sur la carte. De manière naturelle, cette plus courte distance est la distance à vol d'oiseau (ce plus court chemin s'appelle aussi l'orthodromie). Pour plus d'explication, vous pouvez aller voir Wikipédia
Le but de cet exercice est de calculer la distance à vol d'oiseau entre deux endroits A et B dont on connait la latitude et longitude (que l'on obtient facilement ici par exemple).
Pour cela, on utilisera la formule suivante, valable pour des petites distances par rapport au rayon de la terre :
x = ( l o n g i t u d e B − l o n g i t u d e A ) . c o s ( l a t i t u d e A + l a t i t u d e B 2 ) y = l a t i t u d e B − l a t i t u d e A d i s t a n c e = r a y o n . x 2 + y 2
- On prendra pour le rayon de la Terre la valeur 6 371 km
- On fera bien attention au fait que les latitudes et longitudes dans ces formules doivent être en radians alors que celles qu'on a en entrée seront en degrés. On n'oubliera donc pas de passer des degrés aux radians.
- De plus, les résultats devront être arrondis au mètre près. Pour cela, on utilisera la fonction
round( nombre , nombre_de_chiffres_après_la_virgule)
.
Entrée : Les latitudes et longitudes des deux points en degrés.
Sortie : La distance à vol d'oiseau entre ces deux points, arrondie au mètre près.
Pour aller plus loin :
Vous pouvez tester votre programme avec vos propres valeurs. Pour cela, il suffit de récupérer les latitudes et longitudes des lieux sur ce site : www.coordonnees-gps.fr.
Puis tout en bas de votre programme et sans indentation il suffit de taper mon_programme(latitude_A, longitude_A,latitude_B,longitude_B)
en remplaçant latitude_A, longitude_A, latitude_B et longitude_B par vos valeurs.
Pour aller plus loin
Voici quelques approfondissements possibles :