TP 1 - Free
Transcription
TP 1 - Free
TP 1 : Introduction à Python et Spyder, variables et fonctions Mise en place de l’environnement Spyder ; • Lancer P YTHON (x,y) • Cliquer sur l’icône S PYDER et attendre que S PYDER apparaisse (c’est un peu long) ; • Aller dans Affichage/Fenêtres et barres d’outils et selectionner (uniquement) : ✓ ✓ ✓ ✓ ✓ Éditeur Explorateur de variables Consoles Barre d’outil fichiers Barre d’outil exécution • Aller dans Outils/Préférences : – Dans l’onglet Répertoire de travail global, sélectionner Le répertoire suivant, puis définir un nouveau répertoire TPinfo dans Mes documents, – Dans l’onglet Éditeur/Affichage, choisir une police de taille minimale 11 et choisir le thème de coloration syntaxique Scintilla, – Dans l’onglet Console/Affichage, choisir une police de taille minimale 11, – Dans l’onglet Console/Options avancées, sélectionner Script PythonStartup par défaut ; • Aller dans Fichier/Enregistrer la session et quitter, choisir spyder.session comme nom de fichier et l’enregistrer dans le répertoire Mes documents ; B Si vous vous connectez sur un autre ordinateur, vous ne retrouverez pas votre configuration de S PYDER mais vous pourrez la récupérer à partir de Fichier/Charger une session en allant chercher le fichier spyder.session dans Mes documents ; • Relancer S PYDER ; • Lancer Firefox, aller sur http://alexandre.boisseau.free.fr, choisir Informatique PCSI 1 et enregistrer la page dans les signets ; • Dans Documentations, choisir P YTHON et enregistrer la page dans les signets. Les exercices ⋄ À traiter dans l’ordre. Le symbole ✎ indique une question qui ne fait pas appel à l’ordinateur (à résoudre avec papier et crayon). Exercice 1 ( P YTHON comme une calculatrice) : Taper les commandes suivantes dans une console (ouvrir une nouvelle console si-besoin) et noter ce qui se passe (le symbole ↵ désigne la touche Entrée, par la suite on ne l’indiquera plus) : 5+3↵ 2-9↵ 7+3*4↵ (7+3)*4↵ 3**3↵ 3**0.5↵ 5/2↵ BL’opération / appliquée à des entiers réalise une division entière 5.0/2↵ 5/2.0↵ float(5)/2↵ 4*2.5/3↵ Les commandes suivantes définissent et utilisent des variables (regarder ce qui se passe dans l’explorateur de variable au fur et à mesure) : x=10↵ x=x+1↵ largeur=20↵ hauteur=5*9.3↵ v=largeur*hauteur↵ print v↵ largeur=10↵ print v↵ Astuce : x=x+1 peut aussi s’écrire x+=1. Pour finir, tester les commandes : type(largeur)↵ type(hauteur)↵ type(v)↵ Exercice 2 (Un premier programme : aire d’un disque) : (a) Aller dans le menu Fichier puis Nouveau fichier. Taper le programme suivant dans l’éditeur (laisser tel quel les lignes écrites au début du fichier par S PYDER) : from math import pi r=input("Entrez le rayon du disque : ") s=pi*r**2 print "L'aire du disque est", s Enregistrer le programme (menu Fichier) dans le répertoire approprié et en lui donnant un nom pertinent. Lancer le programme (F5) et sélectionner les choix suivants : • Exécuter dans un nouvel interpréteur P YTHON dédié ; • Intéragir avec l’interpréteur P YTHON après l’exécution. BÀ retenir : ce sont les choix que l’on fera systématiquement. (b) Que représentent les variables r et s ? Que font les commandes input et print ? Supprimer la ligne from math import pi et lancer à nouveau le programme, que se passe-t-il ? Exercice 3 (Une première fonction : canette optimale) : On considère un cylindre de hauteur h et de rayon r . On note S sa surface (c’est la somme de la surface latérale et de la surface des deux disques). (a) Créer un nouveau programme qui demande h et r et qui calcule, puis affiche, la surface du cylindre de rayon r et de hauteur h. Enregistrer ce programme (en lui donnant un nom approprié) puis l’exécuter. (b) Modifier le programme précédent pour qu’il demande h mais plus r : r est calculé en fonction de h de sorte que le volume du cylindre soit 0.33. (c) Tester ce programme pour quelques valeurs de r . (d) En faisant quelques essais, trouver la hauteur d’un cylindre de 33 cl dont la surface est minimale (indication : chercher entre 7 et 8 et obtenir une précision d’un chiffre après la virgule). (e) On peut présenter les calculs précédents sous forme d’une fonction : from math import * def surf_canette(h): # h : hauteur de la canette (cm) # Résultat : surface de la canette de hauteur h, rayon r # r choisi de sorte que le volume soit 330 cm^3=33cl v=330 r=sqrt(v/pi/h) return 2*pi*r**2+2*pi*r*h Écrire cette fonction dans un nouveau programme, l’enregistrer sous un nom approprié puis l’exécuter. Taper ensuite dans la console : surf_canette(5) surf_canette(6) surf_canette(7) surf_canette(8) surf_canette(9) ⋄ Astuce : dans une console, appuyer sur la touche ↑ (flèche vers le haut) permet de répéter (et éventuellement modifier) les commandes entrées précédemment. Retrouver avec quelques essais dans la console la valeur de h pour laquelle la surface est minimale. (f ) ✎ Justifier mathématiquement la valeur obtenue à la question précédente. ⋄ Pour représenter graphiquement une fonction, par exemple la fonction surf_canette précédente sur l’intervalle [1, 15], on utilisera les commandes suivantes (dont la signification sera vue ultérieurement) : import numpy as np import matplotlib.pyplot as plt plt.clf() hv=np.linspace(1,15,100) plt.plot(hv,[surf_canette(h) for h in hv]) 800 700 600 500 400 300 plt.show() 200 0 2 4 6 8 10 12 14 16