Exercice 1
On considère un tuple contenant des notes et leurs coefficients :
notes=((12,5),(15,1),(8,1))
Ecrire une fonction permettant de calculer la moyenne pondérée de ces notes :
def moyenne(notes):
'''
retourne la moyenne pondérée
>>>notes=((12,5),(15,1),(8,1))
>>>moyenne(notes)
11.857142857142858
'''
Exercice 2
On considère un ensemble de villes et leurs populations.
villes=(("Lille",252),("Paris",800),("Marseille",300))
Ecrire une fonction renvoyant le nom de la ville la plus peuplée
def ville_la_plus_peuplee(villes):
'''
>>>ville_la_plus_peuplee(villes)
"Paris"
'''
Exercice 3 et 4 et correction
A=(3,-5)
B=(-1,12)
def vecteur(A,B):
return (B[0]-A[0],B[1]-A[1] )
def milieu(A,B):
return ((B[0]+A[0])/2,(B[1]+A[1])/2 )
codage=(("A","Z"),("B","Q"),("C","7"))
def code(texte):
texte_code=""
for carac in texte:
caractere_code=carac
for code in codage:
if carac==code[0]:
caractere_code=code[1]
texte_code+=caractere_code
return texte_code
Proposition de correction
notes=((12,5),(15,1),(8,1))
def moyenne(notes):
somme_notes=0
somme_coeff=0
for note in notes:
val_note=note[0]
coeff_note=note[1]
somme_notes+=val_note*coeff_note
somme_coeff+=coeff_note
return somme_notes/somme_coeff
villes=(("Tokyo",855),("Lille",252),("Paris",800),("Marseille",300))
def ville_la_plus_peuplee(villes):
max_ville=villes[0][1]
nom_ville_max=villes[0][0]
for ville in villes:
if ville[1]>max_ville:
max_ville=ville[1]
nom_ville_max=ville[0]
return nom_ville_max
Sujet et correction dernière interrogation sur les chaînes de caractères :