import math def moyenne(liste): """Calcule la moyenne d'une liste.""" return sum(liste) / len(liste) def ecart_type_echantillon(liste): """Calcule l'écart type de l'échantillon.""" moy = moyenne(liste) variance = sum((val - moy) ** 2 for val in liste) / (len(liste) - 1) return math.sqrt(variance) def incertitude_repetabilite(liste): """Calcule l'incertitude de répétabilité.""" sigma = ecart_type_echantillon(liste) # Écart type de l'échantillon n = len(liste) # Nombre de mesures return round(sigma / math.sqrt(n), 3) # Incertitude arrondie au millième # Saisie des valeurs print("Calcul de l'incertitude de répétabilité") print("Entrez les mesures (séparées par des virgules):") saisies = input("Exemple : 100.1, 100.6, 99.8\n") # Conversion des saisies en liste de nombres try: mesures = list(map(float, saisies.split(','))) # Vérification si la liste est vide if len(mesures) == 0: print("Erreur : Aucune mesure saisie.") else: # Calcul des résultats moyenne_val = round(moyenne(mesures), 3) ecart_type_val = round(ecart_type_echantillon(mesures), 3) incertitude = incertitude_repetabilite(mesures) # Affichage des résultats print("Moyenne des mesures :", moyenne_val) print("Écart type (échantillon) :", ecart_type_val) print("Incertitude de répétabilité :", incertitude) except ValueError: print("Erreur : Veuillez entrer des nombres valides séparés par des virgules.")