Accueil / Contact

Bienvenu sur :

logotop







Site d'initiation à l'algorithmique
LANGAGE PYTHON.
Conforme aux nouveaux programmes du lycée.


ESPACE LIBRE

EXERCICES:LES LISTES AVEC PYTHON


LES EXERCICES:

Le jeu télévisé le compte est bon célèbre dans les années 1970 1980, consistait à tirer au sort 6 nombres parmi 9 chiffres (de 1 à 9) et les nombres suivants 25,50,75 et 100. Puis un entier entre 100 et 999 était tiré au sort.
Avec les 6 nombres tirés au sort et à l'aide des quatre opérations usuelles(addition,soustraction,multiplication ou division) un candidat devait constituer le nombre entier tiré au sort.On n'est pas obligé d'utiliser tous les nombres mais chaque nombre ne peut être utilisé qu'une seule fois. Si un candidat retombait sur ce nombre il annonçait"le compte est bon".
Sinon c'est le candidat le plus proche de ce nombre qui gagnait
On donne l'algoritme suivant:
En langage Python
from random import *
L=[]
for i in range (6):
     La=[1,2,3,4,5,6,7,8,9,25,50,75,100]
     x=choice(La)
     L.append(x)
y=randint(100,999)
print(L)
print(y)

1.Pourquoi doit-on mettre from random import * ?
2.Combien de boucles fait ce programme ?
3.Que contient la variable x ?
4.A quoi sert l'instruction L.append(x) ?
On donne dans l'ordre les notes obtenues dans une matière par un élève au cours d'un trimestre:
10;7;13;8.,5; 11,5;9,5
En langage Python
L= [10,7,13,8.5 9.5,11]
n= len (L)
s= sum (L)
m= round(s/n ,2)
print( L[3] )
print(m)

1.A quoi sert l'instruction Len(L)?
2.Quelle valeur devrait renvoyer L[3] ?
3.Que représente m dans cet exemple ?
4.Ces notes alternent entre des notes d'écrit ou d'oral.Les notes de l'écrit sont coeffiicient 3,les notes de l'oral ont pour coefficient 2. Ecrire en langage Python,un programme qui permet de calculer la moyenne des notes obtenues.
Le but du jeu est de deviner un mot de quatre lettres.Ici c'est le mot "beau " en plusieurs essais.On construit alors l'algorithme suivant:
En langage Python
M=["-","-","-","-"]
for k in range (10):
     x=input("lettre")
     L=["B","E","A","U"]
     if x in L:
         for i in range(4):
            if x==L[i]:
               M.pop(i)
               M.insert(i,x)
               print("bravo",M)
     else:
         print("perdu",M)

1.Combien d'essais accepte ce programme?
2.Déterminer les différents types de variables dans ce programme ?
3.A quoi sert l'instruction M.pop(i)?
4.A quoi sert l'instruction M.insert(i,x)?
On donne l’algorithme suivant:
En langage Python
L1=[(2*i+1)**2 for i in range(11)]
L2=[(2*i)**2 for i in range(11)]
L3= L1+L2
L4=2*L1
L=[0,1]
for i in range (1,11):
    L.append(L[i]+i)
print(L1)
print(L2)
print (L3)
print(L4)
print(L)

1.Que représente L1 ?
Quelle est la différence entre L1 et L2 ?
2.Que devrait-on obtenir pour L3 et L4 ? 3.A quoi sert l'instruction L.append ?
4.Que devrait afficher L?
.
Réponses possibles

Pour accéder aux réponses,Cliquez !
EX1 :
Question 1: Il y a deux variables L et x .
Question 2: L est de type liste, x est de type entier.
Question 3: L[ ] sert à définir une liste vide. L.append sert à ajouter x à la liste L. La liste L est donc modifiée à chaque boucle.
Question 4: On importe la bibliothèque random, pour la fonction choice qui choisit au hasard un élément de la liste.
En mettant import * on n'est pas obligé ensuite de mettre random.choice dans le programme,choice(L) suffit.
EX2:
Question 1 : len(L) sert à compter le nombre d'éléments de L
Question 2: L[3} est l'élément de rang 3 de la liste c'es à dire 8,5
Question 3: m représente la moyenne des notes arrondi à 0,01 près
Question 4: un programme possible ;
En langage Python
L= [10, 7, 13, 8.5 , 9.5 , 11 ]
n= len (L)
s=0
for i in range ( 3) :
    s =s + 3*L[2*i] +2*L[2*i+1]
m= round( s /15 ,2)
print[ m]
EX3:
Question 1: k prend les valeurs 0,1,2 ... 9 on a donc droit 10 essais maximum
Question 2: 2 types de variables: L est de type liste,x est de type chaîne de caractères
Question 3:L.pop(i) enlève l'élément de rang i de la Liste L.
Question 4: M.insert(i,x) insert x au rang i de la chaîne M.
EX4:
Question 1: i varie de 0 à 10, 2i+1 est un nombre impair.C'est une liste par compréhension L1 représente la liste des carrés des 10 premiers nombres impairs.
Pour L2,c'est aussi une liste par compréhension: i varie de 1 à 10.
L2 représente la listes des carrés des 10 premiers nombres impairs

Question 2: l'opération L1 + L2 est la concaténation de la liste L1 et L2:
une autre liste est créée qui contient les éléments de L1 auquels on rajoute les éléments de L2.

Question 3: L.append(L[i]+i) ajoute au rang i de la liste L la valeur i à chaque boucle. Question 4: On a créé ainsi la liste des dix premiers nombres triangulaires

					
					
logotop