Page 1 of 1

Algorithme probabilités (nombre aléatoire)

Unread postPosted: 13 Oct 2014, 21:36
by milobil
Bonjour,

Je dois rentrer l'algorithme suivant dans ma calculatrice mais je recois une erreur false. Voici l'algorithme à rentrer :

Image

Et voilà ce que j'ai codé :


Code: Select all
Define LibPub exoproba()=
Prgm
Local p,n,s,j,i,x
Request : "Entrer le nombre de simulation",n
Request : "Entrer la probabilité",p
s:=0
For i,1,n
  x:=0
  For j,1,4
    If rand()<p Then   
      x:=x+1
    Else
      x:=x-1
    EndIf
  EndFor
EndFor
If x=0 Then
  s:=s+1
EndIf
Disp "X=",x," et S=",s"
EndPrgm



Quand j'exécute le programme tout ce passe bien, ça me demande le nombre de simulations (n) et la proba. Par contre j'ai tout de suite le message "false" qui s'affiche par la suite. Donc je pense que le problème se situe au niveau du rand(), sachant que je dois générer un nombre aléatoire entre 0 et 1.

Merci de m'aider

Le fichier tns direct si ça interesse quelqun :
https://www.sendspace.com/file/0gbh97

Re: Algorithme probabilités (nombre aléatoire)

Unread postPosted: 14 Oct 2014, 00:13
by Bisam
Il y a un petit raté dans ton programme, tu n'as fermé ta boucle for i,1,n au bon endroit.
J'ai amélioré l'indentation pour que ce soit plus visible.
Code: Select all
Define LibPub exoproba()=
Prgm
Local p,n,s,j,i,x
Request  "Entrer le nombre de simulation",n
Request  "Entrer la probabilité",p
s:=0
For i,1,n
  x:=0
  For j,1,4
    If rand()<p Then   
      x:=x+1
    Else
      x:=x-1
    EndIf
  EndFor
  If x=0 Then
    s:=s+1
  EndIf
EndFor
Disp "X=",x," et S=",s
EndPrgm


Il y avait aussi un guillemet en trop à la fin du code... et cela n'aurait pas dû passer la validation donc j'en déduis que tu as oublié de valider avant de faire tes tests.
N'oublie pas de valider les modifications en appuyant sur :nsct: :nsb: ...

Re: Algorithme probabilités (nombre aléatoire)

Unread postPosted: 14 Oct 2014, 10:42
by milobil
Merci bien ca a l'air de fonctionner.

Pourtant avant j'avais fait crrl + B a chaque fois que je voulais tester et ca me validait; etant donné que je programme en C++ j'ai l'habitude d'utiliser le debugger avant de compiler.

Bref bonne journee a toi.

Re: Algorithme probabilités (nombre aléatoire)

Unread postPosted: 14 Oct 2014, 11:08
by Levak
milobil wrote:Pourtant avant j'avais fait crrl + B a chaque fois que je voulais tester et ca me validait;

Il n'y avait pas de problème de syntaxe, juste algorithmique.

Re: Algorithme probabilités (nombre aléatoire)

Unread postPosted: 14 Oct 2014, 16:04
by Bisam
Si, il y avait un guillemet en trop à la fin du code, et des : après les Request... mais c'est sans doute une erreur de copie sur le forum.

Re: Algorithme probabilités (nombre aléatoire)

Unread postPosted: 14 Oct 2014, 18:44
by milobil
Oui peut-être. En tout cas merci.