[Débutant] Aide scilab

Bonjour,
Je travaille sur du scilab et je dois créer un programme tel que :
J'ai une particule en x1=0 à l'instant t1
Je veux savoir quel sera sa position à l'instant N tel que : Xn= Xn-1 + pile_ou_face, pile ou face donnant -1 ou 1 aléatoirement

J'arrive à avoir un résultat avec cette fonction.
function resultat=pile_ou_face()
    if rand()<0.5
        resultat=-1
    else
        resultat=1
    end
endfunction

function recur(N)
    u(1)=0
    for i=2:N
        u(i)=u(i-1)+pile_ou_face()
        disp([u(i);])
    end
endfunction
Mais je n'ai pas de "tableau position" comme demandé.
De plus, y a-t-il un autre moyen de faire la fonction pile ou face qui doit renvoyer +1 ou -1 de façon aléatoire ?

Cordialement.

Réponses

  • Quand je mets le "disp" justement je reçois quelque chose , mais en colonne , et je ne peux pas l'utiliser pour une autre fonction après.
    Cf Piece jointe67714
  • function u=recur(N)
        u(1)=0
        for i=2:N
            u(i)=u(i-1)+pile_ou_face()
            disp([u(i);])
        end
        disp(u')
    endfunction
    
  • J'ai réussi , avec une autre méthode , mais un autre programme me pose problème ...
    Je dois créer une "boussole" qui renvoie aléatoirement les valeurs [1,0], [-1,0], [0,-1] ou [0,1]

    Et sur scilab je ne sais pas faire , d'autant que rand() ne prend que entre 0 et 1 , et pas entier.
    Peut être avec Floor ?
  • Damned, est-ce qu'il n'existerait pas par hasard une fonction diabolique qui envoie $0$ sur $-1$ et $1$ sur $1$?! ;-)
  • Bonjour,

    $f(x)=2x-1$ ?

    Cordialement,

    Rescassol
  • Existe-t-il une fonction de scilab permettant de choisir un élément aléatoire d'une liste ? Par exemple dans une liste de matrice , en choisir une ?
  • Bonsoir,

    Il suffit de tirer un entier aléatoire qui servira d'index dans la liste.

    Cordialement,

    Rerscassol
  • @remark: on peut même faire l'économie de la fonction bool2s dans ta commande: sauf erreur de ma part, l'opérateur sum va gérer automatiquement la conversion de type.

    Bien cordialement,
Connectez-vous ou Inscrivez-vous pour répondre.