Correction - CPGE Dupuy de Lôme

publicité
Correction TP Chaı̂nes de caractères et début listes .
Exercice 1
1. Constituez une liste semaine contenant les 7 jours de la semaine. A partir de cette liste,
comment récupérer-vous seulement les 5 premiers jours de la semaine ? Les jours du
week-end ? Comment obtenir le résultat avec un index négatif ? Quelle est la nature
des éléments de la liste ?
In[2]:semaine=["lundi","mardi","mercredi","jeudi","vendredi","samedi","dimanche"]
Out[2]: [’lundi’, ’mardi’, ’mercredi’, ’jeudi’, ’vendredi’, ’samedi’, ’dimanche’]
In [3]: semaine[0:5]
Out[3]: [’lundi’, ’mardi’, ’mercredi’, ’jeudi’, ’vendredi’]
In [4]: semaine[5:7]
Out[4]: [’samedi’, ’dimanche’]
In [5]: semaine[-2::]
Out[5]: [’samedi’, ’dimanche’]
# les éléments de la liste sont des cha^
ınes de caractères.
2. Accéder au dernier jour de la semaine.
In [9]: semaine[6]
Out[9]: ’dimanche’
3. Que va renvoyez la commande semaine[: −2] ? Devinez avant tout .
In [10]: semaine[:-2]
Out[10]: [’lundi’, ’mardi’, ’mercredi’, ’jeudi’, ’vendredi’]
# l’élément en position -2 est exclu et les : signifie tout jusqu’à
4. Échanger les jours mardi et jeudi.
X=semaine[1]
semaine[1]=semaine[3]
semaine[3]=X
# semaine[i] est une variable
5. Tester si mardi est bien dans la liste semaine.
In [11]: "mardi" in semaine
Out[11]: True
1
4. Que va renvoyer la commande len(semaine) ? puis len(semaine[3]) ? Devinez avant
tout.
In [12]: len(semaine)
Out[12]: 7 # il s’agit de la longueur de la liste.
In [13]: len(semaine[3])
Out[13]: 5 # il s’agit de la longueur du mot "jeudi"
Exercice 2.
Écrire les instructions suivantes :
>>> L = [randint(1, 6) f or i in range(1, 12) ]
>>> L
Que contient la liste L (écrire) ?
In [14]: from random import randint
In [15]: L=[randint(1,6) for i in range(1,12)]
In [16]: L # contient des nombres au hasard entre 1 et 6
Out[16]: [6, 3, 2, 4, 2, 5, 4, 4, 5, 6, 4]
Quelle instruction Python permet de connaı̂tre la longueur de la liste ?
In [17]: len(L)
Out[17]: 11
Quelle instruction Python permet de tester si 6 est dans la liste ?
In [18]: 6 in L
Out[18]: True # c’est le cas dans cette liste !
Que fait le programme suivant A VOTRE AVIS ?
i=input("donner un entier entre 0 et 11") # demande un entier entre 0 et 11
et le place dans la variable i
i=int(i) # i est bien un entier
if L[i]%2==0: # test si l’élément de la liste en position i est pair
L[i]=L[i]+1
else:
L[i]=L[i]-1
Exercice 3.
On considère une liste L donnée.
2
Écrire des instructions conditionnelles qui répondent au problème qui suit : si la longueur
de la liste est paire alors vous renvoyez le premier et le dernier terme si la longueur
est impaire alors vous renvoyez le terme du milieu de la liste.
long=len(L)
if long%2==0:
print("le premier terme est", L[0], "et le dernier terme est", L[long-1])
else:
print("le terme au milieu de la liste est", L[(long-1)//2])
# attention (long-1)/2 ne fonctionne pas car l’indice est un nombre entier !!
Exercice 4
Créez (sur votre feuille) 4 listes nommées hiver, printemps, ete (sans accent) , automne
contenant les mois correspondant à ces saisons. Créez ensuite une liste saisons contenant les sous-listes hiver, printemps, ete (sans accent) , automne.
In [28]: hiver=["janvier","fevrier","mars"]
In [29]: printemps=["avril","mai","juin"]
In [30]: ete=["juillet","aout","septembre"]
In [31]: automne=["octobre","novembre","decembre"]
In [32]: saisons=[hiver,printemps,ete,automne]
In [33]: saisons[2]
Out[33]: [’juillet’, ’aout’, ’septembre’]
In [34]: saisons[1][0] # le [1] désigne la liste printemps
Out[34]: ’avril’
In [35]: saisons[0][1::] # le [0] désigne la liste hiver
Out[35]: [’fevrier’, ’mars’]
Exercice 5
Comment obtenir rapidement en écrivant juste ”cui” ?
cuicuicuicuicuicuicuicuicuicuicuicuicuicuicuicuicuicui
In [39]: "cui"*5
Out[39]: ’cuicuicuicuicui’
Exercice 6.
Écrire les instructions suivantes en Python.
Demander deux nombres réels au hasard à une personne extérieure.
3
a=input("donnez un nb svp")
a=float(a)
b=input("donnez un nb svp")
b=float(b)
L=[a,b]
if a>b:
x=L[0]
L[0]=L[1]
L[1]=x
print(L)
x=input("donnez un nb svp")
x=float(x)
if L[0] <= x <= L[1] :
print("Bien joué!")
else:
x=input("donnez un nb svp")
x=float(x)
4
Téléchargement