Algorithme pour déterminer l'intervalle de fluctuation

Question

Écrire un algorithme permettant de déterminer l'intervalle de fluctuation au seuil de 95%

Indice

On se posera la question des variables que l'on prend en entrée et de ce que l'algorithme doit ressortir.

Solution

1
Initialisation
2
  Saisir N # La taille de l'échantillon
3
  Saisir p # La probabilité du caractère
4
Traitement
5
  r=1/√N # On stocke ce calcul dans une variable
6
  I1=p-r # pour éviter de le calculer
7
  I2=p+r # deux fois
8
Sortie
9
  Afficher l'intervalle de fluctuation au seuil de 95% est [I1 ;I2]

Question

Écrire avec Python en ligne un programme demandant à l'utilisateur

  • la taille de l'échantillon

  • la probabilité du caractère

et qui affiche l'intervalle de fluctuation au seuil de 95%

Vérifier le fonctionnement avec les données de l'exercice précédent.

Indice

La racine carrée en Python s'obtient par l'instruction sqrt dans la librairie math.

Indice

Attention au type des variables N et : N est un entier (int), p est un réel (float).

Solution

Simulation

Voici le programme Python correspondant à l'algorithme ci-dessus.

Programme calculant l'intervalle de fluctuation

Question

Modifier le programme afin qu'il vérifie si les données fournies par l'utilisateur vérifient les conditions de validité[1] de la formule.

Indice

On rappelle les mots clé python

  • and pour ET

  • or pour OU

Solution

Voici le programme modifié ainsi que le code qui le compose.

1
from math import sqrt
2
# Initialisation
3
N=int(input("Saisir la taille de l'échantillon"))
4
p=float(input("Saisir la probabilité du caractère"))
5
# Traitement
6
if (p>=0.2 and p<=0.8) and N>=25:
7
  r=1/sqrt(N)
8
  I1=p-r
9
  I2=p+r
10
# Sortie
11
  print("L'intervalle est I=[",I1,";",I2,"]")
12
else:
13
  print ("Les valeurs fournies ne vérifient pas les conditions de validité de la formule")

On ajoute simplement au début du traitement un test vérifiant que les conditions de validité sont remplies, à savoir

  • N>=25

  • p>=0,2

  • p<=0,8