Statistiques avec python



Listes en Python

Exercice 1:
  1. Qu'affiche le programme suivant ? L'exécuter ensuite pour vérifier.
    L=[1,2,10,11,20]
    print(L[3])
    print(L[4])
    print(L[0]+L[1])
    
    # len est l'abbréviation de length
    n=len(L)
    print("Nombre de valeurs: ",n)
    
  2. Qu'affiche le programme suivant ? L'exécuter ensuite pour vérifier.
    from pylab import *
    x=[1,3,5,7,9]
    y=[5,3,5,3,5]
    
    n=len(x)
    for i in range(n):
        print("Coordonnées du point ",i," : (",x[i]," , ",y[i],")")
    
    plot(x,y,"-og")
    show()
    

Voir éventuellement le chapitre sur les listes en Pythons pour en savoir plus.

Moyenne et écart type

Exercice 2:
  1. Avec la fonction suivante en Python:
    def Somme(L):
        S=0
        n=len(L)
        print("Nombre de valeurs: ",n)
        for i in range(n):
            S=S+L[i]
        return S
    
    qu'affichera le programme suivant ?
    L=[1,3,6]
    a=Somme(L)
    print(a)
    
  2. En s'aidant de la fonction Somme précédente, écrire une autre fonction Moyenne qui va calculer la moyenne des valeurs d'une liste L:
    def Moyenne(L):
        ...
        ...
        return M
    
    L=[8,10,12]
    M=Moyenne(L)
    print(M)
    
  3. Écrire maintenant une fonction qui calcule la moyenne pondérée d'une série de valeurs et leurs coefficients:
    def MoyenneCoeff(L,C):
        ...
        ...
        return M
    
    L=[8,10,12]
    C=[2,1,1.5]
    M=MoyenneCoeff(L,C)
    print(M)
    
  4. Écrire maintenant une fonction Var qui calcule la variance d'une liste L et une fonction VarCoeff qui calcule la variance d'une série pondérée de valeurs:
    def Var(L):
        ...
        ...
        return V
    
        
    def VarCoeff(L,C):
        ...
        ...
        return V
    
    L=[6, 10, 12, 8, 20, 11]
    M=Moyenne(L)
    V=Var(L)
    print("Moyenne: ",M)
    print("Variance: ",V)
    print("Ecart type: ", ... )
    
    # et avec des coefficients
    C=[1, 1, 2, 1, 3, 2]
    M=MoyenneCoeff(L)
    V=VarCoeff(L)
    print("Moyenne: ",M)
    print("Variance: ",V)
    print("Ecart type: ", ... )    
    
  5. Calculer la moyenne et l'écart type de la série:

    taille(cm) 151 152 155 160 165 170 172 176 180 186 188
    effectif 1 2 3 4 5 4 6 3 3 2 1

Pourcentages d'évolution

Exercice 3:
  1. Un magasin décide de solder tous les articles qu'il vend de 12%.
    1. Calculer, avec Python, le montant de la réduction pour un article qui coûte initialement 80 euros.
      Afficher le montant de la réduction et le prix final après réduction.
    2. Écrire une fonction Python Reduc(x) qui prend un prix x en entrée, et qui calcule et affiche le montant de la réduction et le prix final après réduction.
      def Reduc(x):
          ...
          print("Réduction de: ", ... )
          print("Prix final de: ", ... )
      
      #Pour un article de 50 euros: 
      x=50
      Reduc(50)
      
  2. Le magasin souhaite maintenant appliquer plusieurs niveaux de réduction:
    • pour des prix inférieurs à 100 euros, la réduction est de 12%,
    • pour des prix compris entre 101 euros et 1000 euros, la réduction est de 20%
    • enfin, pour tous les prix supérieurs, la réduction est de 30%

    Modifier la fonction précédente pour qu'elle calcule et affiche toujours la réduction et le prix final, mais avec ce nouveau barême ((re)voir éventuellement les structures conditionnelles if).
    En utilisant cette fonction, afficher les réductions et nouveaux prix pour des articles de 60 euros, 350 euros, et 2200 euros.
  3. Écrire maintenant une fonction Ticket, qui prend en entrée une liste de prix, et calcule et affiche, pour chaque article, sa réduction et son prix après réduction, et qui affiche finalement le montant total de la réduction ainsi que le prix final pour tous les articles.
    def Ticket(L):
        ...
        ...
    
    # Exemple de liste:
    L=[50,80,230,15,150]
    Ticket(L)
    


Exercice 4:
  1. Qu'affiche le programme suivant ? L'exécuter ensuite pour vérifier.
    n=5
    S=0
    for i in range(n):
        S=S+2
    
    print(S)
    
  2. Qu'affiche le programme suivant ? L'exécuter ensuite pour vérifier.
    n=5
    P=1
    for i in range(n):
        P=P*2
    
    print(P)
    


Exercice 5: Un village comptait 4000 habitants l'année 2000. Chaque année depuis, cette population a augmenté de 3% d'une année à la suivante.
Écrire un programme qui calcule le nombre d'habitants, année aprés année depuis 2000. Représenter graphiquement le nombre d'habitants en fonction de l'année.


Exercice 6: On observe des mouvements de population entre deux villes A et B. Il y a actuellement 50000 personnes qui habitent dans la ville A et 2000 dans le village B.
  1. Chaque année, 10% de la population de la ville A déménage pour aller habiter dans le village B, tandis que 30% des habitants du village B viennent habiter dans la ville A. Comment vont évoluer les populations de ces deux villes ?
    Écrire un programme qui calcule le nombre d'habitants, année aprés année, dans la ville A et dans le village B.
  2. Représenter graphiquement, sur un même graphique, l'évolution de ces populations en fontion de l'année, en rouge pour la ville A et bleu pour B. La population de la ville A évolue comme précédemment: 10% des habitants vont chaque année habiter en B. 30% des habitants de B vont encore aussi chaque année se déplacer vers A. On considère maintenant que, chaque année, 5% des habitants de B vont ailleurs, ni en A ni en B.
    Modifier le programme précédent pour rendre compte graphiquement de la nouvelle évolution des populations.



Voir aussi:

LongPage: h2: 3 - h3: 0