• Aucun résultat trouvé

TP-Python-2

N/A
N/A
Protected

Academic year: 2021

Partager "TP-Python-2"

Copied!
2
0
0

Texte intégral

(1)

TP d’informatique n°2 R. DUPERRAY Lycée F. BUISSON PTSI

Exercice 1 : Echauffement…..

a) Ecrire une fonction qui calcule la vitesse moyenne d’un mobile connaissant son temps de parcours et la distance parcourue.

b)

Ecrire une fonction qui indique s’il est possible de construire un triangle avec trois segments de mesures données.

Exercice 2 : Variables locales et variables globales

On considère le programme suivant :

def position_valeur (valeur, liste) :

for i in range(len(liste)) :

if liste[i] = = valeur:

return(i)

return -1

Unevaleur = float(input(« Unevaleur : »))

Uneliste = [1,2,4,8,16,32,64,128,256,512,1024] p =position_valeur(Unevaleur,Uneliste)

if p > 0 :

print (« la valeur est a la position », p) else :

print (« la valeur n’est pas presente »)

a) Repérer le début et la fin de la fonction ainsi que le programme principal.

b) Comment se nomment les variables globales ? Et les locales ? Tester ce programme.

Si la variable est utilisée dans plusieurs fonctions alors elle doit être globale; en revanche, si elle n’est

utilisée que dans une fonction pour des calculs intermédiaires, il faut la considérer comme locale.

Exercice 3 : La suite logistique

Une suite (ou séquence) importante en biologie qui sert de modèle pour décrire l’évolution d’une population est la suite logistique définie de la façon suivante :

Pn+1= k Pn(1− Pn).

Pn indique la taille de la population à la nième génération (ou à l’année n) d’une espèce unique. Pour garder des nombres de taille raisonnable, Pn indiquera la fraction de la population maximale, ainsi 0≤ Pn ≤ 1 . L’équation logistique est ici formulée sous sa forme discrète par opposition à une forme continue (c’est-à-dire une équation différentielle). La forme discrète est bien adaptée pour décrire les populations d’insectes où l’accouplement et la mort se produisent de façon périodique. Les écologistes (les biologistes spécialistes en évolution des populations, terme dont le sens est différent de celui des écologistes militants de la défense de l’environnement) souhaitent prédire la taille d’une population en fonction du temps et se posent les questions suivantes : la population va-t-elle se stabiliser à une valeur limite ? Evolue-va-t-elle de façon périodique ? A-va-t-elle un comportement aléatoire ?

Dans cet exercice, il faudra écrire un programme Python (qui utilisera les fonctions, les listes…) pour calculer les n premiers termes de la séquence avec une population initiale P0 telle que

(2)

1) Calculez une trentaine de termes de la séquence pour P0 =1

2 et pour deux valeurs de k telle que 1 ≤ k ≤ 3 (stockez les valeurs dans une liste). Si vous savez le faire, tracez le graphe de chaque séquence (fonction Plot, cf. TP-Python-4). La séquence converge-t-elle ? Recommencez pour une autre valeur de P0 avec toujours 0≤ P0 ≤ 1. La limite dépend-t-elle du choix de P0 ? Du choix de k ? 2) Calculez les termes de la suite pour une valeur de k comprise entre 3,0 et 3,4. Comment se comportent les termes de la série ?

3) Refaire la même chose pour une valeur de k comprise entre 3,4 et 3,5. Que se passe-t-il ?

4) Recommencez pour une valeur de k comprise entre 3,6 et 4. Calculez au moins 100 termes de la série et tracez-la. Comment se comporte la suite ? Que se passe-t-il si vous changez la valeur de P0 de seulement 0,001 ? Ce type de comportement est nommé chaotique et on le retrouve dans l’évolution de populations d’insectes dans certaines circonstances.

Exercice 4 : Intégration numérique

Le concept d’intégrale joue un rôle fondamental en mathématiques et bien sûr dans les sciences naturelles (physique, chimie, sciences de l’ingénieur, biologie etc..). Vous connaissez tous le théorème fondamental du calcul qui permet de calculer l’intégrale d’une fonction :

La difficulté consiste à déterminer la primitive (antiderivative en anglais) F de la fonction f . Il est très souvent difficile voire impossible de déterminer F c’est pourquoi les scientifiques déterminent les intégrales de façon approchée (quand même très précise) par un calcul numérique.

On peut calculer de façon approchée l’intégrale par la méthode dite de Simpson : f x

( )

a b

dx ≈

( )

b− a 3n f a

( )

+ f b

( )

+ 4 f a + 2k −1

(

(

)

h

)

+ 2 k=1 f a

(

+ 2kh

)

n 2 ( )−1

k=1 n 2

⎛ ⎝ ⎜⎜ ⎞⎟⎟ Ici, h =

( )

b− a

n et n doit être un entier pair.

L’objectif de cet exercice est d’écrire une fonction Simpson

(

a,b,n

)

qui retourne le côté droit de la relation encadrée.

Ecrire un programme avec entre autres la fonction Simpson qui permettra d’évaluer 3 2 sin

3x 0

π

dx ,

dont la valeur exacte est 2, pour n = 2, 6,12,100,500 . Le programme devra pour chaque cas afficher la valeur approchée de l’intégrale ainsi que l’erreur par rapport à la valeur exacte. Conclusion.

Références

Documents relatifs

Vérifier si la chaîne saisie est valide ou non et afficher le

Des commentaires doivent toujours figurer dans les programmes : ils permettront aux autres programmeurs de comprendre ce que vous avez voulu faire ; ils vous seront

Cette méthode consiste à calculer la somme des carrés des écarts entre les points du nuage et les points d’une droite estimée et à choisir comme meilleure droite celle pour

A chaque étape le joueur propose un nombre, l'ordinateur annonce si ce nombre est plus grand ou plus petit que l'original. Si le joueur trouve le nombre, l'ordinateur indique

1) Lancer l’éditeur MU. 2) Reprendre les scripts suivants.. 3) En déduire le rôle de la structure for.

• Dans le langage Python, l'indentation (décalage vers la droite) des instructions indique quelles sont les instructions qui se trouvent dans la « boucle pour ». En langage Scratch,

• aide pour la calculatrice au verso de la fiche distribuée et émulateur utilisé en classe. Voici la fiche distribuée à compléter au fur et

faire un retour sur ce qu'il s'est passé par rapport à ce que vous aviez prévu.. from turtle import *