%et pour en rajouter un :
A = cat(1, A, {'toto'});
Lolo
Ok, cat() pour ajouter, mais pour supprimer ? Est-ce possible ?
Sam
J'ai aussi cherché comment faire des listes avec Matlab (particulièrement de strings) pour faire un traitement par lot et tout afficher à la fin, et je n'ai rien trouvé.
Et à Daronmaster : non, mettre les vecteurs bout à bout dans un tableau n'est pas du tout suffisant.
La structure de liste est bien différente (les éléments mis dans la liste n'ont pas à être homogènes)
En plus quand il s'agit de strings, les mettre dans un vecteur les concatènes c'est pénible.
En scilab : L=list(rand(2,2),["coucou" "Scilab"],[%t;%f])
J'ai l'impression qu'il n'y a pas d'équivalent en matlab. (Pourquoi l'acheter alors ??)
coraline
sous matlab tu peux faire la même chose:
L= {[rand(2,2)];['coucou Scilab'];[true false]}
L{:} %pour appeler la liste L
L{1}(1,:) %pour appeler dans la liste 1 la première ligne entière
...
DrStephenson
Tu peux utiliser une classe avec une donnée, et un pointeur vers l'élément suivant.
Matlab a déja implémenté cela.
matlab tout comme scilab(version gratuite) utilise principalement des vecteurs que tu peux interpréter comme étant des liste. tu peux donc faire u = [[1,1],[1,1]]; vréant ainsi soit un vecteur 2x2 ou une liste de vecteur à toi de l'interpréter comme tu le sens
Mlantrobic
le problème c'est que pour créer un tableau de liste de taille différente, utiliser des vecteurs n'arrive qu'a empêcher tout fonctionnement.