Maple : problème avec une liste

sakusa

Maple : problème avec une liste

Message par sakusa » 22 oct. 2013 18:21

Bonsoir, j'ai un problème avec le code suivant en Maple :

Code : Tout sélectionner

tirer_entier:=rand(1..nombre_noeuds):

genere_liste:=proc()
   global liste,nombre_noeuds:
   local i:
   for i from 1 to A do
      liste[i]:=tirer_entier():
   end do:
liste;
end proc:

liste_nombre:=[-1,4,-3,5,4,-12]:
nombre_noeuds:=nops(liste_nombre):
A:=nombre_noeuds-2;
liste_noeuds:=[seq(i,i=1..nombre_noeuds)]:
genere_liste();
Maple s'obstine à me renvoyer liste quand j'exécute la procédure genere_liste.

Savez-vous pourquoi, et comment résoudre ce problème ?

Sakusa

Messages : 1832

Inscription : 01 août 2007 15:04

Profil de l'utilisateur : Élève de lycée

Re: Maple : problème avec une liste

Message par gardener » 22 oct. 2013 21:44

J'imagine que c'est A et pas nombre_noeuds en variable globale dans ta procédure. Le "liste;" à la fin de ta procédure fait qu'elle renvoie liste, n'est-ce pas ce que tu veux ?
Doctorant Maths-Info, ancien ENS Cachan.

sakusa

Re: Maple : problème avec une liste

Message par sakusa » 23 oct. 2013 10:16

Je voudrai qu'il me renvoie la liste sous la forme de la séquence que j'ai créée.

[4,5,4,3] par exemple

Messages : 1832

Inscription : 01 août 2007 15:04

Profil de l'utilisateur : Élève de lycée

Re: Maple : problème avec une liste

Message par gardener » 23 oct. 2013 21:45

Il te renvoie ta liste. Comme c'est une variable globale, tu peux avoir accès à la liste avec print(liste);
Mais en fait, tu ne t'y es pas pris super bien pour construire ta liste, parce qu'ainsi elle a le type "table", en gros, un tableau indexé par n'importe quoi.
Déja, je te conseille d'utiliser liste comme une variable locale. Ensuite, mets un liste=[]; au début, puis liste=[op(liste), tirer_entier()]; dans le for est d'un meilleur effet.
En fait, voila une meilleure version :

Code : Tout sélectionner

genere_list:=proc(A)
local liste,i:
liste:=[]:
for i from 1 to A do
liste:=[op(liste), tirer_entier()]:
end do:
return(liste):
end proc;
Doctorant Maths-Info, ancien ENS Cachan.

sakusa

Re: Maple : problème avec une liste

Message par sakusa » 24 oct. 2013 09:30

C'est exactement ce que je voulais ! Un grand merci !!

Répondre