[Enseignement] amélioration d'un programme

classic Classic list List threaded Threaded
3 messages Options
Roland Thiers-2 Roland Thiers-2
Reply | Threaded
Open this post in threaded view
|

[Enseignement] amélioration d'un programme

Bonjour,
je ne suis pas du tout expert pour programmer (en Scilab ou dans un  
autre langage).
J'aimerais bien savoir si le petit programme ci-dessous (relatif à  
l'intervalle de fluctuation) peut être amélioré.
En particulier pour déterminer a et b j'ai fait une boucle , ce qui  
est je crois déconseillé, y-a-t-il un autre moyen ?
merci à celle ou celui qui aura la patience de regarder ça !
Cordialement, Roland Thiers

// fonction donnant, pour un échantillon de taille n, l'intervalle
// de fluctuation au seuil de 95 %  de la  fréquence de réalisation de  
la
// variable aléatoire  X suivant la loi binomiale B(n,p).
function IntFluctu(n,p)
     binc = zeros(1,n+1);// liste de n+1 zéros dans la variable binc
     binc(1)=loi_binomiale(n,p,0) // proba de 0 réalisation.
     for k = 1:n
binc(k+1)=loi_binomiale(n,p,k)+binc(k);
     end
     // détermination de a, plus petit entier tel que p(X<=a)>0,025
a=0
while binc(a+1)<=0.025 do a=a+1
end
     // détermination de b, plus petit entier tel que p(X<=b)>=0,975
b=0
while binc(b+1)<0.975 do b=b+1
end
// pour afficher la loi binomiale B(n,p) cumulée
//    u=0:n;
//afficher(["k ",string(u) ; "P(X<=k)",string(binc)])
   afficher("l''intervalle de fluctuation au seuil de 95% est  
["+string(a/n)+" ; "+string(b/n)+"]")
endfunction
_______________________________________________
enseignement mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/enseignement
Georges DUBOULOZ Georges DUBOULOZ
Reply | Threaded
Open this post in threaded view
|

Re: [Enseignement] amélioration d'un programme

bonsoir, 
  ci-joint un programme un peu plus simple obtenir l'intervalle de fluctuation exact et centré concernant la loi binomial au seuil de 0.95, (ici en Xcas) traduisible très simplement en Scilab , voir sur calculatrice, avec le tableau de conversion des langages joint aussi ( ressource n°120 sur le site planète maths de l'académie de Grenoble)

Cordialement,
     Georges Dubouloz


Le 30 janvier 2013 07:12, Roland Thiers <[hidden email]> a écrit :
Bonjour,
je ne suis pas du tout expert pour programmer (en Scilab ou dans un autre langage).
J'aimerais bien savoir si le petit programme ci-dessous (relatif à l'intervalle de fluctuation) peut être amélioré.
En particulier pour déterminer a et b j'ai fait une boucle , ce qui est je crois déconseillé, y-a-t-il un autre moyen ?
merci à celle ou celui qui aura la patience de regarder ça !
Cordialement, Roland Thiers

// fonction donnant, pour un échantillon de taille n, l'intervalle
// de fluctuation au seuil de 95 %  de la  fréquence de réalisation de la
// variable aléatoire  X suivant la loi binomiale B(n,p).
function IntFluctu(n,p)
    binc = zeros(1,n+1);// liste de n+1 zéros dans la variable binc
    binc(1)=loi_binomiale(n,p,0) // proba de 0 réalisation.
    for k = 1:n
binc(k+1)=loi_binomiale(n,p,k)+binc(k);
    end
    // détermination de a, plus petit entier tel que p(X<=a)>0,025
a=0
while binc(a+1)<=0.025 do a=a+1
end
    // détermination de b, plus petit entier tel que p(X<=b)>=0,975
b=0
while binc(b+1)<0.975 do b=b+1
end
// pour afficher la loi binomiale B(n,p) cumulée
//    u=0:n;
//afficher(["k ",string(u) ; "P(X<=k)",string(binc)])
  afficher("l''intervalle de fluctuation au seuil de 95% est ["+string(a/n)+" ; "+string(b/n)+"]")
endfunction
_______________________________________________
enseignement mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/enseignement


_______________________________________________
enseignement mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/enseignement

Intervalle fluctuation.xws (2K) Download Attachment
tableau_langages_programmation.pdf (1M) Download Attachment
Roland Thiers-2 Roland Thiers-2
Reply | Threaded
Open this post in threaded view
|

Re: [Enseignement] amélioration d'un programme

Le 30 janv. 13 à 19:10, Georges Dubouloz a écrit :

> bonsoir,
>   ci-joint un programme un peu plus simple obtenir l'intervalle de  
> fluctuation exact et centré concernant la loi binomial au seuil de  
> 0.95, (ici en Xcas) traduisible très simplement en Scilab , voir sur  
> calculatrice, avec le tableau de conversion des langages joint aussi  
> ( ressource n°120 sur le site planète maths de l'académie de Grenoble)
>
> Cordialement,
>      Georges Dubouloz
>
>
> Le 30 janvier 2013 07:12, Roland Thiers <[hidden email]> a  
> écrit :
> Bonjour,
> je ne suis pas du tout expert pour programmer (en Scilab ou dans un  
> autre langage).
> J'aimerais bien savoir si le petit programme ci-dessous (relatif à  
> l'intervalle de fluctuation) peut être amélioré.
> En particulier pour déterminer a et b j'ai fait une boucle , ce qui  
> est je crois déconseillé, y-a-t-il un autre moyen ?
> merci à celle ou celui qui aura la patience de regarder ça !
> Cordialement, Roland Thiers
>
> // fonction donnant, pour un échantillon de taille n, l'intervalle
> // de fluctuation au seuil de 95 %  de la  fréquence de réalisation  
> de la
> // variable aléatoire  X suivant la loi binomiale B(n,p).
> function IntFluctu(n,p)
>     binc = zeros(1,n+1);// liste de n+1 zéros dans la variable binc
>     binc(1)=loi_binomiale(n,p,0) // proba de 0 réalisation.
>     for k = 1:n
> binc(k+1)=loi_binomiale(n,p,k)+binc(k);
>     end
>     // détermination de a, plus petit entier tel que p(X<=a)>0,025
> a=0
> while binc(a+1)<=0.025 do a=a+1
> end
>     // détermination de b, plus petit entier tel que p(X<=b)>=0,975
> b=0
> while binc(b+1)<0.975 do b=b+1
> end
> // pour afficher la loi binomiale B(n,p) cumulée
> //    u=0:n;
> //afficher(["k ",string(u) ; "P(X<=k)",string(binc)])
>   afficher("l''intervalle de fluctuation au seuil de 95% est  
> ["+string(a/n)+" ; "+string(b/n)+"]")
> endfunction

Bonjour,
merci beaucoup pour le programme et le tableau de conversion !
je vais me pencher à nouveau là-dessus,
Cordialement, Roland Thiers

> _______________________________________________
> enseignement mailing list
> [hidden email]
> http://lists.scilab.org/mailman/listinfo/enseignement
>
> <Intervalle  
> fluctuation
> .xws
> >
> <
> tableau_langages_programmation
> .pdf>_______________________________________________
> enseignement mailing list
> [hidden email]
> http://lists.scilab.org/mailman/listinfo/enseignement

_______________________________________________
enseignement mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/enseignement