Aide Maple Syracuse
Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

Aide Maple Syracuse



  1. #1
    invited83388e1

    Aide Maple Syracuse


    ------

    Bonjour à tous, j'aurais besoin d'aide car je ne comprend pas pourquoi ma procédure ne tourne pas.

    Je crée une procédure Syracuse :

    syracuse := proc (n) if irem(n, 2) = 0 then s(n) = (1/2)*n else s(n) = 3*n+1 end if end proc

    Ensuite je crée une autre procédure qui appelle celle ci dessus avec une boucle while qui stop quand mon nombre n arrive à 1 et me donne le nombre d'étapes nécessaires pour arriver à 1 grâce à un compteur :

    nombre_etapes := proc (n)
    local p, i;
    p := n;
    i := 0;
    while p <> 1 do p := syracuse(p);
    i := i+1
    end do;
    return i ;
    end proc;

    et donc quand je valide cette procédure Maple bug et se ferme alors que ma procédure est juste (je pense).

    Si quelqu'un a une idée, j'attends vos réponses, merci d'avance.

    ps: Ce programme tourne chez d'autres personnes de ma promo mais bug chez certains comme moi. J'ai Maple 12 et le problème ne viens pas de la version apparement.

    -----

  2. #2
    invite4ef352d8

    Re : Aide Maple Syracuse

    Le problème viens de ta procedure syracuse je pense :

    cette syntaxe "s(n) =..." ne veut pas du tout dire ce que tu pense :

    pour maple : s n'est pas défini c'est donc une variable. de même pour s(n). le signe d'égalité simple "=" ne correspond pas à une assignation, mais à a une comparaison (a=b signifie "est-il vrai que a et b sont égaux ?", si tu veux dire "donne à a la valeur de b" on ecrit a:=b comme tu la fias dans ta deuxième procédure. )

    bref ecrit plutot : syracuse := proc (n) if irem(n, 2) = 0 then (1/2)*n else 3*n+1 end if end proc

    et si ca marche toujours pas essai :

    syracuse := proc(n) local s; if irem(n, 2) = 0 then s := (1/2)*n else s:= 3*n+1 end if: s; end proc

  3. #3
    invited83388e1

    Re : Aide Maple Syracuse

    Ca marche avec la deuxième façon, merci beaucoup

Discussions similaires

  1. Aide maple
    Par invited3527d51 dans le forum Mathématiques du supérieur
    Réponses: 1
    Dernier message: 23/10/2008, 12h03
  2. Aide Maple
    Par invitedd1e06b1 dans le forum Mathématiques du supérieur
    Réponses: 5
    Dernier message: 25/02/2008, 18h15
  3. aide maple
    Par invite4ffe6e57 dans le forum Mathématiques du supérieur
    Réponses: 1
    Dernier message: 04/12/2007, 16h46
  4. Aide Maple ..
    Par invite870bfaea dans le forum Mathématiques du supérieur
    Réponses: 3
    Dernier message: 05/01/2007, 12h56
  5. Aide en maple
    Par invite12c5bcac dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 30/05/2006, 15h21