Informatique

Question

Bonjour,créer une fonction python qui déterminé les quartiles d'une série statistiques

1 Réponse

  • Réponse :

    Explications :

    Programme Python ( avec liste)

    from math import*

    def quartile():

       print("Cet algorithme calcule les quartiles des nombres que vous allez entrer")

       print("Lorsque la serie sera terminée, entrer le mot <fin> au clavier")

       #on définit la variable liste

       liste = []

       n = "0"

       #on entre les données

       #tant que le nombre entré est différent de "fin"

       #on transforme les données en nombre réel

       while n!="fin":

           n=input ("entrer une valeur ou le mot <fin>")

           if n!="fin":

               liste.append(float(n))

       #on détermine le nombre de données entrées

       print ("vous avez entré",len(liste),"valeurs")

       #calcule de la médiane

       #On ordonne la liste des données par ordre croissant

       liste.sort()

       #On teste si le nombre de données est pair ou impair

       if len(liste)%2 != 0 :

           z = int(len(liste)/2)

        #le nombre de données est impair, la médiane est le zieme terme car la liste commence à zéro

           m= round(liste[z],1)

           print ("la médiane est: " ,m)

       else:

           z = int(len(liste)/2)

       #le nombre de données est pair, la médiane est la 1/2 somme entre le z-1ieme terme et lezieme terme

           m = round((liste[z-1]+liste[z])/2,2)

           print ("la médiane est: " ,m)

       #calcul de Q1

        #On teste si le nombre de données est un multiple de 4

       if len(liste)%4 != 0 :

           z = int(len(liste)/4)

       #le 1er quartile est le zieme terme car la liste commence à zéro

           q1= round(liste[z],2)

           print ("Le 1er quartile est: ",q1)

       else:

           z = int(len(liste)/4)

       # le 1er quartile est le z-1 ieme terme

           q1 = round(liste[z-1],2)

           print ("le 1er quartile est: ",q1)

       #calcul de Q3

       #On teste si le nombre de données X 3 est un multiple de 4

       if 3*len(liste)%4 != 0 :

           z = int(3*len(liste)/4)

       #le 3eme quartile est le zieme terme car la liste commence à zéro

           q3= round(liste[z],2)

           print ("Le 3eme quartile est: ",q3)

       else:

           z = int(len(liste)*3/4)

       #le 3eme  quartile est le z-1 ieme terme

           q3 = round(liste[z-1],2)

           print ("le 3eme quartile est: ",q3)

    Résultat

    Cet algorithme calcule les quartiles des nombres que vous allez entrer

    Lorsque la serie sera terminée, entrer le mot <fin> au clavier

    entrer une valeur ou le mot <fin>10

    entrer une valeur ou le mot <fin>15

    entrer une valeur ou le mot <fin>8

    entrer une valeur ou le mot <fin>12

    entrer une valeur ou le mot <fin>16

    entrer une valeur ou le mot <fin>14

    entrer une valeur ou le mot <fin>18

    entrer une valeur ou le mot <fin>fin

    vous avez entré 7 valeurs

    la médiane est:  14.0

    Le 1er quartile est:  10.0

    Le 3eme quartile est:  16.0

    >>>

    ou

    >>> quartile()

    Cet algorithme calcule les quartiles des nombres que vous allez entrer

    Lorsque la serie sera terminée, entrer le mot <fin> au clavier

    entrer une valeur ou le mot <fin>8

    entrer une valeur ou le mot <fin>10

    entrer une valeur ou le mot <fin>14

    entrer une valeur ou le mot <fin>10

    entrer une valeur ou le mot <fin>16

    entrer une valeur ou le mot <fin>18

    entrer une valeur ou le mot <fin>19

    entrer une valeur ou le mot <fin>8

    entrer une valeur ou le mot <fin>fin

    vous avez entré 8 valeurs

    la médiane est:  12.0

    le 1er quartile est:  8.0

    le 3eme quartile est:  16.0

    >>>

Autres questions