Informatique Générale 1 TD/TP no 1 Objectif(s) Exercice 1

Universit´
e Pierre et Marie Curie
2012-2013
Informatique G´
en´
erale 1
Travaux Pratiques
TD/TP no1
Objectif(s)
MPremiers programmes
MNotions d’expressions, d’instructions.
MProbl`
emes du typage.
MPremi`
eres fonctions pr´
ed´
efinies
PARTIE CORRIG´
EE
Exercice 1 – Evaluation interactives d’expressions
Ouvrer un terminal et tapez la commande python. Evaluer chaque expression suivante en la recopiant et en tapant
Entr´
ee pour valider une ligne et compl´
eter sur votre feuille les lignes vides avec les r´
eponses donn´
ees par python.
Que r´
epond python ? Pourquoi ? Remarque : tapez quit() pour fermer la session interactive de python.
>>>2
>>>2.5
>>>2,5
>>>2+3
>>>2 + 3
>>>2<3
>>>(2<3)
>>>2==3
>>>2=3
>>>2==(10/5)
>>>10/3
>>>10%3
>>>10.0/3
>>>10/3.0
>>>float(10)/3
>>>2.3
>>>20%3
>>>toto
>>>"toto"
>>>"toto"2
>>>"toto"+2
>>>"toto"+"2"
>>>"toto"+str(2)
>>>"t"<"T"
>>>"toto" <"Truc"
>>>false
>>>False
>>>True and False
>>>not True
>>>(2<3) and (3<4)
>>>(2<3) and False
>>> "toto" and (2<3)
>>> ("t"<"T")and (2<3)
Exercice 2 – Introduction `
a la notion d’instructions et de variables
Ex´
ecuter les instructions suivantes dans une session python interactive et compl´
eter sur votre feuille les lignes vides
avec les r´
eponses donn´
ees par python.
InfoGen1 - 2012/2013 - TD/TP no1
>>>x=3
>>>print x
>>>y=8
>>>print x+y
>>>z=x+y
>>>print z
>>>z=2
>>>print z
>>> res = x + y *z
>>> print res
>>> res = x *y-z
>>> print res
>>> res = x - y ** z
>>> print res
>>>res=x+y%z
>>> print res
>>> res = x / y *z
>>> print res
>>> res = float(x) / y *z
>>> print res
>>> res = float(x) *z/y
>>> print res
>>> res = float(x) / (y *z)
>>> print res
>>>x=3
>>>y=8
>>>z=x+y
>>>z
>>>print z
>>>print "resultat=z"
>>>print "resultat="+z
>>>print "resultat="+str(z)
>>>print "resultat=",z
>>>print "resultat=%d" % z
>>> print "%d+%d=%d" % (x,y,z)
>>> print "%d+%d=%d" % (y,x,z)
>>>resultat=2.5
>>>print "resultat=%d" % resultat
>>>print "resultat=%f" % resultat
Exercice 3 – Introduction `
a l’utilisation de fonctions pr´
ed´
efinies
Ex´
ecuter les instructions suivantes dans une session python interactive compl´
eter sur votre feuille les lignes vides avec
les r´
eponses donn´
ees par python.
>>>x=3.6
>>>type(x)
>>>int(x)
>>>type(x)
>>>x = int(x)
>>>type(x)
>>>int(3.3)
>>>float(4)
>>>bool(-2.3)
>>>bool(0)
>>>bool("abcd")
>>>bool("GM3 rules!")
>>>bool("")
>>>y=-10.2
>>>abs(y)
>>>print y
>>>y=abs(y)
>>>print y
>>>y=123.3456
>>>round(y)
>>>round(y,2)
c
2011/2012 Polytech’Paris page 2 sur 6
InfoGen1 - 2012/2013 - TD/TP no1
>>>x=123.4567890123
>>>math.trunc(x)
>>>math.floor(x)
>>>import math
>>>math.trunc(x)
>>>math.floor(x)
>>>math.ceil(x)
>>>help("math.trunc")
>>>help("math.floor")
>>>help("math.ceil")
>>>help("round")
>>>print x
Exercice 4 – Introduction `
a la saisie interactive
Ex´
ecuter les instructions suivantes dans une session python interactive compl´
eter sur votre feuille les lignes vides avec
les r´
eponses donn´
ees par python.
>>>print "bonjour"
>>>print("bonjour")
>>>raw_input "bonjour"
>>>raw_input("bonjour")
>>>raw_input()
>>>help("raw_input")
>>>raw_input("entrez votre age.\n")
>>>x=raw_input("entrez votre age.\n")
>>>print x
>>>type(x)
>>>print "votre age est %s" % x
>>>print "votre age est %d" % x
>>>x=int(x)
>>>print "votre age est %d" % x
Exercice 5 – Premier programme avec Python
La saisie interactive d’expressions ou d’instructions dans un terminal a l’inconv´
enient de ne pas garder de trace de
votre travail. Nous allons d´
esormais ´
ecrire des programmes complets sous forme de fichiers texte (extension .py), et
les ex´
ecuter ensuite.
1. Cr´
eer dans vos dossiers personnels un r´
epertoire infogen1. Dans ce r´
epertoire, cr´
eer un sous-r´
epertoire
TP1. Ouvrir l’´
editeur gedit, recopiez-y le code ci-dessous et enregistrez futur programme sous le nom
premierpg.py dans le sous-r´
epertoire TP1. Ex´
ecutez le programme dans un terminal en vous plac¸ant dans le
sous-r´
epertoire en question et ex´
ecutez la commande python premierpg.py
print("bienvenue dans votre premier programme python")
nom=raw_input("Comment vous appelez-vous ?\n")
print "bonjour %s !" % nom
age=raw_input("quel age avez-vous ?\n")
age=int(age)
age=age+1
print "l’annee prochaine, vous aurez %d ans" % age
c
2011/2012 Polytech’Paris page 3 sur 6
InfoGen1 - 2012/2013 - TD/TP no1
2. Modifier votre programme pour ajouter l’en-tˆ
ete de fichier et les commentaires suivants :
###########################################
# TP1 - Exercice 1 #
# #
# Monprenom MONNOM #
# Leprenomdemonbinome LENOMDEMONBINOME #
# #
###########################################
# -*- coding=latin-1 -*-
# Premier programme de bienvenue
print("bienvenue dans votre premier programme python")
nom=raw_input("Comment vous appelez-vous ?\n")
print "bonjour %s !" % nom
age=raw_input("quel age avez-vous ?\n")
age=int(age) #conversion en entier
age=age+1 #calcul de l’age
print "l’annee prochaine, vous aurez %d ans" % age
Quelle est l’utilit´
e des commentaires pour vous? pour votre binˆ
ome? pour le prof ?
A quoi sert la ligne comment´
ee
#-*- coding=latin-1 -*-
? Essayer de mettre des caract`
eres accentu´
es dans le code et de l’enlever pour constater la diff´
erence.
Exercice 6 – Guillemets
1. ´
Ecrire un programme guillemets.py qui saisit le nom puis le pr´
enom de l’utilisteur et qui affiche le texte
suivant ton nom est machin, en remplac¸ant machin par le nom saisi.
2. Modifier le programme pour qu’il affiche ensuite le texte ton nom complet est "machin bidule", en
respectant la place des guillemets et en remplac¸ant machin et bidule par les nom et pr´
enom respectivement.
Exercice 7 – Les cookies
Recette de cuisine : ”Pour 12 cookies environ, battre 115g de beurre mou avec 120g de sucre en poudre jusqu’`
a ce
que le m´
elange devienne clair. Ajouter 1 œuf et 1 cuill`
ere `
a caf´
e d’extrait de vanille. Ajouter 175g de farine, et m´
elanger
le tout avec 200g de p´
epites de chocol!at noir. Sur les plaques garnies de papier sulfuris´
e, d´
eposer des petites boules de la
pr´
eparation bien espac´
ees, et faire cuire 10min `
a 180˚C. Laisser refroidir avant de d´
eguster.”
´
Ecrire un programme cookies.py qui demande `
a l’utilisateur le nombre de cookies et qui affiche le texte de la
recette actualis´
e en fonction du nombre de cookies. La fonction int() permet d’arrondir vers 0 pour les nombres
d’œufs et de cuill`
ere de vanille.
PARTIE `
A RENDRE
Exercice 1 – Jour de la semaine
Ecrire un programme TP1 ex1.py qui calcule et affiche le num´
ero d’un jour de l’ann´
ee `
a partir du num´
ero de la
semaine et du num´
ero du jour dans la semaine et qu pr´
ecise si ce num´
ero est pair. Le programme aura les affichages
suivants:
c
2011/2012 Polytech’Paris page 4 sur 6
InfoGen1 - 2012/2013 - TD/TP no1
Numero de semaine? 2
Numero du jour de la semaine entre 1 et 7 ? 3
--> Jour numero 10
--> Ce nombre est-t-il pair ? True
Exercice 2 – Op´
erateurs logiques
Ecrire un programme TP1 ex2.py qui demande successivement deux valeurs bool´
eennes A et B et qui retourne
la valeur de l’expression logique suivante not(A or B) puis celle de l’expression not(A) and not(B). Indice:
bool(int("0")) retourne la valeur bool´
eenne False, et bool(int("1")) retourne la valeur bool´
eenne True
L’affichage produit est le suivant:
Entrez la valeur de A :
0
Entrez la valeur de B :
1
"not (A or B)" vaut False
"not(A) and not(B)" vaut False
Qu’en d´
eduisez-vous ? La r´
eponse sera donn´
ee en commentaire dans le fichier.
Exercice 3 – Date de Paques
Voici un algorithme permettant de calculer le jour du mois d’avril repr´
esentant le jour de Pˆ
aques1.
Algorithme 1 : Calcul du jour de Pˆ
aques.
Donn´
ees :Ml’ann´
ee consid´
er´
ee
Sorties :Ple nombre de jour `
a compter du 31 mars pour avoir le jour de Pˆ
aques
1n=M1900;
2a= (nmod 19)×7+1;
3b=a/19 Remarque : division enti`
ere ;
4c= (11 ×ab+4)mod 29 ;
5d=n/4Remarque : division enti`
ere ;
6e= (nc+d+31)mod 7 ;
7P=25 ce;
8Afficher P
1. ´
Ecrire un programme TP1 ex3.py demandant l’ann´
ee consid´
er´
ee et calculant (puis affichant) le nombre de
jour `
a compter du 31 mars repr´
esentant le jour de Pˆ
aques. Par exemple, pour l’ann´
ee 2013, vous afficherez : En
2013, le jour de Paques est le 21eme jour apres le 31 Mars.
2. Cet algorithme est-il correct ?
Exercice 4 – What’s the date today ?
1. D´
ecrire l’algorithme permettant de d´
eterminer le nombre de jours J, d’heures H, de minutes M et de secondes S
inclus dans un nombre total de secondes ST. On rappelle que :
une minute = 60 secondes
une heure = 60 minutes
une journ´
ee = 24 heures
Ainsi, dans un total de 123 secondes, il y a 0 jour, 0 heure, 2 minutes et 3 secondes. Pour un total de 3610
secondes, il y a 0 jour, une heure, 0 minute et dix secondes.
1http://fr.wikipedia.org/wiki/Calcul de la date de Pˆ
aques
c
2011/2012 Polytech’Paris page 5 sur 6
1 / 6 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !