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 ?
supprimer un élément d'une liste
Modérateur : xcasadmin
Re: supprimer un élément d'une liste
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
Je suis confronté au même problème et je n'ai pas réussi à enlever les quotes.
Je m'en suis sorti avec :
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
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.
liste:=[9,17,5,7];tirage:=rand(size(liste));subsop(liste,tirage=NULL)
fonctionne.
Re: supprimer un élément d'une liste
suppress ne fait pas deja ce travail ?
liste:=[9,17,5,7];indice:=rand(size(liste));suppress(liste,indice)
liste:=[9,17,5,7];indice:=rand(size(liste));suppress(liste,indice)
Re: supprimer un élément d'une liste
Oui, susbop c'est pour la compatibilite maple.