Page 1 sur 1

supprimer un élément d'une liste

Publié : mar. sept. 15, 2009 6:14 pm
par jmmeny
J'aimerais supprimer un élément d'une liste, de rang tiré au hasard.
J'ai essayé sans succès qq chose comme ça :

liste:=[9,17,5,7];tirage:=rand(size(liste));subsop(liste,'tirage=NULL')

y a-t-il un moyen d'utiliser subsop dans ce cas ?

Re: supprimer un élément d'une liste

Publié : mar. sept. 15, 2009 7:42 pm
par parisse
je vais changer = pour qu'on ne soit plus obliger de quoter 'n=NULL' et comme ca tirage sera evalué ce qui fera marcher la suppression.

Re: supprimer un élément d'une liste

Publié : dim. juin 01, 2014 7:20 pm
par cdeval
Je suis confronté au même problème et je n'ai pas réussi à enlever les quotes.
Je m'en suis sorti avec :

Code : Tout sélectionner

liste:=[9,17,5,7];tirage:=rand(size(liste));execute("subsop(liste,'"+string(tirage)+"=NULL')");

Re: supprimer un élément d'une liste

Publié : lun. juin 02, 2014 7:36 am
par parisse
j'ai certainement modifie = entre-temps avec un effet de bord. Je remodifie pour que
liste:=[9,17,5,7];tirage:=rand(size(liste));subsop(liste,tirage=NULL)
fonctionne.

Re: supprimer un élément d'une liste

Publié : lun. juin 02, 2014 8:17 am
par alb
suppress ne fait pas deja ce travail ?
liste:=[9,17,5,7];indice:=rand(size(liste));suppress(liste,indice)

Re: supprimer un élément d'une liste

Publié : lun. juin 02, 2014 11:01 am
par parisse
Oui, susbop c'est pour la compatibilite maple.