[Users-fr] [PROVENANCE INTERNET] Un problème de liste
Stéphane Mottelet
stephane.mottelet at utc.fr
Mar 26 Mai 14:24:47 CEST 2020
Bonjour,
Le 26/05/2020 à 13:46, Lamy Alain a écrit :
>
> Oui : on ne peut pas modifier une variable globale dans une fonction.
>
Si, justement, mais c'est très laid :
function test()
global a
a(2)=[3,4]
end
global a
a = list([1,2,4])
test()
disp(a)
--> disp(a)
(1)
1. 2. 4.
(2)
3. 4.
> Le mieux :
>
> a= list()
>
> function[a] = _test_(a)
>
> a(2) = [3,4]
>
> endfunction
>
> a(1)= [1,2,4]
>
> _a = test_(a)
>
> disp(a)
>
> Alain Lamy
>
> CNES - DSO/DV/IF - Bpi 1712
>
> 18, Av. Edouard Belin | Tel : 05 61 27 35 61
>
> 31401 Toulouse Cedex 9 | Fax : 05 61 28 25 40
>
> France | Email : Alain.Lamy at cnes.fr <mailto:Alain.Lamy at cnes.fr>
>
> *From:* users-fr <users-fr-bounces at lists.scilab.org> *On Behalf Of
> *GOBILLOT Gilles 116128
> *Sent:* mardi 26 mai 2020 13:26
> *To:* French users mailing list for Scilab <users-fr at lists.scilab.org>
> *Subject:* Re: [Users-fr] [PROVENANCE INTERNET] Un problème de liste
>
> Bonjour,
>
> A mon avis il faut soit passer a en paramètre à la fonction, soit
> déclarer la liste en global (globala)?
>
> Cordialement,
>
> http://www.cea.fr/var/cea/signatures/cea_logo.jpg
> <https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/www.cea.fr/>
>
>
>
> Gilles GOBILLOT
> *Ingénieur-Chercheur *
>
> DES/IRESNE/DTN/STCP/LISM
> Commissariat à l'énergie atomique et aux énergies alternatives
> Tel.: 04.42.25.20.33 / Mobile : 06.87.99.19.57
>
> /Toute notre actualité sur /www.cea.fr
> <https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/www.cea.fr/>/Suivez-nous
> également sur Twitter :/@CEA_Recherche
> <https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/twitter.com/#!/CEA_Recherche>
>
> *De :*users-fr <users-fr-bounces at lists.scilab.org
> <mailto:users-fr-bounces at lists.scilab.org>> *De la part de* AUZANNEAU
> Fabrice
> *Envoyé :* mardi 26 mai 2020 12:23
> *À :* French users mailing list for Scilab <users-fr at lists.scilab.org
> <mailto:users-fr at lists.scilab.org>>
> *Objet :* [PROVENANCE INTERNET] [Users-fr] Un problème de liste
>
> Bonjour
>
> J’utilise des listes dans un code Scilab et je rencontre un problème
> pour les modifier dans une fonction. Un exemple simple :
>
> a= list()
>
> function_test_()
>
> a(2) = [3,4]
>
> endfunction
>
> a(1)= [1,2,4]
>
> _test_()
>
> disp(a)
>
> L’exécution donne ce message d’erreur :
>
> à la ligne 2 de la fonction test ( C:\Users\***\Desktop\list.sce
> ligne 10 )
>
> à la ligne 13 du fichier exécuté C:\Users\***\Desktop\list.sce
>
> Sous-matrice incorrectement définie.
>
> Lorsque je demande le contenu de la liste a, j’obtiens :
>
> --> a
>
> a =
>
> a(1)
>
> 1. 2. 4.
>
> Si je mets l’instruction de la fonction dans le programme principal,
> tout se passe bien :
>
> a= list()
> a(1)= [1,2,4]
> a(2)= [3,4]
> disp(a)
>
> L’exécution donne :
>
> exec('C:\Users\***\Desktop\list.sce', -1)
>
> (1)
>
> 1. 2. 4.
>
> (2)
>
> 3. 4.
>
> Est-ce un bug ou une erreur de ma part ? Comment modifier une liste
> depuis une fonction ?
>
> Merci
>
> Fabrice AUZANNEAU
>
> Commissariat à l’énergie atomique et aux énergies alternatives
>
> http://lists.scilab.org/mailman/listinfo/users-fr
> <https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users-fr>
>
>
> _______________________________________________
> users-fr mailing list
> users-fr at lists.scilab.org
> https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users-fr
--
Stéphane Mottelet
Ingénieur de recherche
EA 4297 Transformations Intégrées de la Matière Renouvelable
Département Génie des Procédés Industriels
Sorbonne Universités - Université de Technologie de Compiègne
CS 60319, 60203 Compiègne cedex
Tel : +33(0)344234688
http://www.utc.fr/~mottelet
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <https://lists.scilab.org/pipermail/users-fr/attachments/20200526/1194dc1b/attachment.htm>
-------------- section suivante --------------
Une pièce jointe autre que texte a été nettoyée...
Nom: image001.jpg
Type: image/jpeg
Taille: 8708 octets
Desc: non disponible
URL: <https://lists.scilab.org/pipermail/users-fr/attachments/20200526/1194dc1b/attachment.jpg>
Plus d'informations sur la liste de diffusion users-fr