Enseignements

Python V 2 TP 2

Les exercices donnés sur cette page sont très largement inspirés de ceux donnés par Bob Cordeau et ses collègues de l’IUT d’Orsay dans cette feuille d’exercices.

Exercices a rendre

Dans ce qui suit, on vous demande de rendre certains exercices. Pour ce faire veuillez procéder de la facon suivante, en respectant scupuleusement les indications:

  1. Envoyez vos exercices par mail a Olivier Dalle
  2. N’envoyez QU’UN SEUL MAIL contenant tous les exercices, a la fin de la seance.
  3. Votre mail doit comporter un sujet tel que le suivant suivant:
    Sujet: PYTHON- Groupe AILE - TP2 - NOM Prenom
    (ou vous remplacez NOM Prénom par les votres bien-sur!)
  4. Attendez que O. Dalle vous confirme oralement qu’il a bien recu votre mail avant de quitter la salle

Exercice 1: le test if

Essayez le bout de code suivant pour tester l’instructioon if. Essayez-le avec différentes valeurs, 50, 100, 150…

if a > 100: # N'oubiez pas le deux-point...
    print "a depasse la centaine..." # Ni l'indentation
elif a== 100:
    print "a vaut 100"
else:
    print "a ne vaut pas cher"

Script TP2_trinome.py A RENDRE:

Ecrivez un script qui calcule les solutions de l’equation ax^2+bx+c=0

Correction

Remarque: Pour être sûr de bien saisir des flottants, employez l’instruction raw_input() qui assure une saisie en mode texte) suivie d’un transtypage en flottant:

>>> a = raw_input(“entrez a:”)
>>> a = float(a)

Retour en haut de la feuille d’exercice

Exercice 2: boucles while et for

Astuce…

La fonction range(debut[ ,fin[ ,pas]]) permet de creer tres facilement des sequences de nombres. Tres pratique en combinaison avec une boucle for:
for i in range(10): ...

L’instruction while répète le corps de la boucle tant que la condition est vraie. La boucle for est l’instruction ideale pour parcourir les elements d’une sequence, par exemple une liste.

Voici des exemples:

i=7
while i>0:   # N'oubliez pas le deux-point...
   print (i, end=" ")  # N'oubliez pas l'indentation
   i = i - 1 # Essayez de predire le resultat de
             # cette boucle avant d'essayer

slogan = ['Changez', 'le', 'premier', 'enarque']
for cri in slogan:  # N'oubliez pas ...
   print (cri, end=" ")
 

Exercice A RENDRE:

Ecrivez un programme TP2_while.py qui affiche les 20 premiers termes de la table de multiplication par 7, en signalant au passage (a l’aide d’une astérisque) ceux qui sont multiples de 3.
Exemple:

>>> python TP2_while.py
7 14 21 * 28 35 42 * 49 …
>>>

Correction

Retour en haut de la feuille d’exercice

Exercice 3: La Tortue

Pour illustrer les boucles, nous allons maintenant utiliser le module turtle. Ce module permet de réaliser des graphiques dits “tortue” c-a-d des dessins correspondant à la trace laissée par une petite tortue imaginaire dont nous controlons les déplacements à l’aide d’instructions simples.

Voici un exemple:

from turtle import *

for i in range(4):
    forward(100)
    left(90)

reset()
a = 0
while a< 12:
    forward(150)
    left(150)
    a = a+1

Exercice A RENDRE:

Ecrivez un programme TP2_turtle.py qui trace un octogone de 50 pixels de cote.

Retour en haut de la feuille d’exercice

Exercice 4: Programmation

Ecrivez le programme TP2_1.py décrit ci-après.

Vous jouez avec deux dés et vous voulez savoir combien il y a de facons de faire un certain nombre. Notez bien qu’il y a deux facon d’obtenir 3 par exemple: 1–2 et 2–1. Faites comme expliqué en cours une saisie filtrée (voir exemple ci-après) et calculez le nombre demande.

~> python TP2_1.py
Entrez un entier [2 .. 12] : 1
Entrez un entier [2 .. 12], s.v.p. : 14
Entrez un entier [2 .. 12], s.v.p. : 9

Il y a 4 facon(s) de faire 9 avec deux des.

Ecrivez le programme TP2_2.py décrit ci-après.

Affichez la somme des 10 premiers entiers de trois facons différentes:

  • en utilisant la formule classique (n x (n+1))/2;
  • en utilisant une boucle while;
  • en utilisant une boucle for.

Ecrivez le programme TP2_3.py décrit ci-après.

Un ordinateur n’est qu’un automate programme fini. Il est sur que l’on ne peut esperer effectuer des calculs avec une precision infinie, ce qui conduit a des erreurs d’arrondi. Quelle precision peut-on esperer ? On va definir l’epsilon-machine comme la plus grande valeur epsilon telle que:

1+epsilon = 1

Pour cela, intitialisez une variable dx a la valeur 1.0, puis dans une boucle while, divisez dx par 2.0 tant que la condition (1.0 + dx > 1.0) est vraie.

Combien trouvez-vous (valeur de epsilon et nombre d’iterations) ? Commentez votre résultat.

Retour en haut de la feuille d’exercice

Ceux qui ont terminé cette feuille d’exercices, peuvent maintenant attaquer les exercices de cette nouvelle feuille

Page d’Accueil

Enseignements 2017-18

Enseignements Antérieurs

Recherche…

edit SideBar

Blix theme adapted by David Gilbert, powered by PmWiki