Aide table loi normale Scilab [Résolu]

Signaler
-
 Thomas -
Bonjour,

Je rencontre un problème. J'ai un travail à faire sur Scilab. Celui-ci est de créer la table de la loi normale de la fonction suivante (autrement dit : la courbe de Gauss) : f(x) = (1/sqrt(2*pi))*exp(-x^2/2)
Je ne sais vraiment pas comment faire après beaucoup d'heures de recherches, je suis désespéré.

Merci beaucoup

1 réponse

Messages postés
13814
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
8 janvier 2021
775
bonjour,
peut-être en commençant par des exercices plus simples?
>
Messages postés
13814
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
8 janvier 2021

Plein d'exercices qui sont en rapport avec la loi normale car la question porte sur la loi normale
Ducoup, j'ai réussi.
Voulez vous voir le code ? Cela pourrait servir à plusieurs d'entre nous ;)
Messages postés
13814
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
8 janvier 2021
775 > Thomas
bonne idée, en effet!
pourras-tu également marquer la discussion comme résolue?
>
Messages postés
13814
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
8 janvier 2021

Oui je fais ca
Voila le code, avec l'affichage de la table normale sur Scilab
   // La fonction f

function y=f(x)                   // Création de la function à intégrer.
    y= 1/sqrt(2*%pi)*exp(-x^2/2) // La fonction f(x) de l'énoncé.
endfunction                     // Fin de la function.
x=linspace(-4,4,100)    // On définit les paramétres graphique.
clf                    // Réinitialise les valeurs par défault.
plot(x,f)             // Affichage de la courbe.

// Une fonction qui calcule une approximation de l'intégrale par la méthode de Simpson en prenant pour n l'entier calculé à la partie A. 

function ms=simpson(a,b,n) // Création de la function simpson.
    h=(b-a)/n             //Début de la formule de Simpson.
    ms=0
    for k=0:n-1          // Début de la boucle.
        x1=a+k*h
        x2=x1+h
        ms=ms+f(x1)+4*f((x1+x2)/2)+f(x2)
    end                 // Fin de la boucle.
    ms=ms*h/6
endfunction

format(7)
table=[]
table(1,1)="x"
for i=2:41
    table(i,1)=string((i-2)/10)
end
for j=2:11
    table(1,j)=string((j-2)/100)
end
for i=2:41
    for j=2:11
        pij=0.5+simpson(0,(i-2)/10+(j-2)/100,9)
        table(i,j)=string(pij)
    end
end
disp(table)