IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Écriture d'un script simple avec boucles [Débutant]


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2014
    Messages : 23
    Points : 7
    Points
    7
    Par défaut Écriture d'un script simple avec boucles
    Bonjour à tous!

    J'ai quelques difficultés à mettre en place un petit script sous Matlab. Je suis tout jeune débutant sur ce logiciel et je viens donc vous demander une petite aide. Voici ce que j'aimerai faire : j'ai un fichier de données avec des durées de présences ou d'absences à différents temps d'observation pour plusieurs individus (au total 20).
    Exemple:
    T1 : 5sec
    T2 : 0sec
    T3 : 60sec
    T4 : 45sec
    T5 : 0sec
    etc.

    Je formule l’hypothèse que si l’individu est présent à t1 et t2 il l’a été de manière continue entre t1 et t2 ; si il est présent à t1, t2 et t3 : il a tjs été présent entre t1 et t3

    Je commences à t0 : hors zone
    Première durée d(1)=0
    Temps 1
    Si temps 1 =0 je passe au temps suivant
    Si temps 1= une valeur sup. à 0, alors première durée est mise à delta T (intervalle entre deux mesures)

    On passe à temps 2
    Si à temps 2=0 alors on stop la durée 1 et on initialise d(2)=0
    Si à temps 2 présence, alors d(1) est augmenté de delta t

    Etc

    d(1)=0
    indice de la durée j=1
    boucle sur les temps i= 1, dernière observation (ici 60)
    si présence(1)=0 alors passer au temps suivant : j=j+1
    si présence (1)=1 d(1)=d(1)+delta temps

    A la fin, j'ai un ensemble de n durées : d(1),d(2),….d(n).

    Merci pour votre aide.

    Julien

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Bonjour,

    J'avoue avoir du relire quelques fois ton posts pour cerner ta demande, ce n'est pas des plus limpides!

    La première question est: as-tu une première ébauche de script? L'objectif ici serait de le corriger, de l'enrichir, de le compléter et non pas a priori te donner le script tout fait.
    Seconde interrogation: Si n correspond au nombre de temps T, je ne vois pas pourquoi, au vue de tes explications, il y aurait n durées puisque plusieurs T successifs avec présence correspondront à une unique durée enrichie de tes delta T.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2014
    Messages : 23
    Points : 7
    Points
    7
    Par défaut
    Bonjour Gooby!

    Désolé pour ce discours peu limpide...pas facile d'écrire simplement ce que j'aimerai.

    Je n'ai pour l'instant rien commencer quand à l'écriture du script.
    En fait il peu y'avoir plusieurs d car dès qu'à un instant t il y'a absence on passe au d suivant. Ex : t1=5s, t2=3s, t4=0s, t5=45s, t6=10s... alors d(1)=7 (ie 5+ (5-3)), on stoppe d(1) car t4=0 donc on initialise d(2)=80s etc.

    Merci.

    Julien

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Peux tu nous donner avec exactitude quelle est la forme de ton tableau de données? sur MATLAB si tu l'as déjà importé, sur excel sinon. Ton problème n'a pas l'air très compliqué pour mon niveau de connaissance MATLAB. ça doit être faisable avec des boucles for.

    Si tu n'as aucune idée de comment démarrer, je peux déjà te donner une première piste de démarrage

    Il faudra donc que tu utilises, par exemple, une boucle pour i allant de 1 à la longueur de T.
    Une première initialisation, du genre d(1) = T(1);
    compteur = 1;

    puis des boucles de condition: si T(i) ~= 0
    alors on fait d(compteur) = d(compteur) + d(compteur)-T(i)

    tandis que si T(i) = 0
    on fera compteur = compteur+1;

    C'est incomplet mais ça peut t'aider déjà à poser la base, essaies de construire quelques chose et reviens quand tu auras une première ébauche, même approximative!

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2014
    Messages : 23
    Points : 7
    Points
    7
    Par défaut
    Hello Gooby!

    Désolé pour ce long moment d'attente (un peu débordé). Je copie-colle le bout de script que j'ai commencé d'écrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    %% Première partie - Importation du jeu de données
     
    d =dataset('xlsfile','duree.xls');
     
    %% Seconde partie - Mise en place de la boucle
     
     
     
    j=1;                    % indice de la durée
    for i=1:60;             % boucle de 1 à la dernière observation
      if T(i)~= 0
         d(j)= d(j)-(d(j)+T(i))
      else 
        T(i)=0
        j= j+1
      end
    end
    Merci encore pour ton aide.

  6. #6
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Bonjour

    Un premier conseil, vas faire un tour ici

    Ensuite les quelques petites choses que je vois au premier coup d'oeil sont

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    j=1;                    % indice de la durée
    for i=1:length(T);             % pour être sûr de parcourir tout ton vecteur!
      if T(i)~= 0
         d(j)= d(j)+(d(j)-T(i))
      elseif T(i)=0       % un else seul suffirait car soit T(i)~=0 ou soit T(i)=0, il n'y a pas d'autres cas possibles!
        j= j+1
      end
    end

    Qu'obtiens-tu lorsque tu exécutes ce premier script?

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2014
    Messages : 23
    Points : 7
    Points
    7
    Par défaut
    Lorsque je run ce script Matlab m’envoie le message d'erreur suivant :

       elseif T(i)=0       % un else seul suffirait car soit T(i)~=0 ou soit T(i)=0, il n'y a pas d'autres cas possibles!
                  |
    Error: The expression to the left of the equals sign is not a valid target for an assignment.
    
    
    Info: ma version de Matlab est celle-là 8.1.0.604 (R2013a)

    Julien

  8. #8
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Tu peux soit enlever T(i) = 0 qui dans ce cas ne sert à rien, soit mettre T(i) == 0 si tu désires le garder pour une meilleure compréhension. (Pour la comparaison on utilise le double = tandis que pour l'assignation d'une valeur à une variable on utilise l'égale simple, ici tu effectues une comparaison)

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2014
    Messages : 23
    Points : 7
    Points
    7
    Par défaut
    Merci!

    Une autre erreur apparait en lançant le script... :
    Undefined function or variable 'T'.
    
    

  10. #10
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Parce que tu n'as pas défini ce qu'était T et d par rapport aux données que tu as importé!

    Sous quelles formes sont les données que tu as importé? Si je comprends bien tu les as importé dans ta variable d (que tu devrais renommé datas pour ne pas la confondre avec les delta).

    PS: je ne connais pas du tout la fonction dataset et je ne sais pas sous quelles formes sont les données que tu récupères, je ne peux donc pas te dire si c'est la bonne fonction à utiliser pour importer des données.

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2014
    Messages : 23
    Points : 7
    Points
    7
    Par défaut
    Mon fichier (excel) se présente de la façon suivante :
    - en colonne j'ai mes individus que je suis dans le temps (20 ind au total)
    - pour chaque individu j'ai 60 mesures (qui correspondent au nombre de fois où je les observe)
    - ces 60 mesures sont les temps en sec que l'individu a passé dans ma zone d'observation (ex pour ind1 j'ai 0s; 3s; 5s; 16s; 48s; 60s; 35s; etc. jusqu'au nombre de 60)

    Donc T ce serait les temps d'observation (mes 60 mesures) et d ça serait ce que je cherche à obtenir avec le script (les durées).

    J'ai utilisé le dataset pour importer mon fichier de données excel (vu dans le help de Matlab).

  12. #12
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Tu devras donc effectuer le script une fois par individu, ce qui revient à faire une boucle pour chaque individu.

    Ici le T est donc la matrice que tu importes avec dataset.

    Après correction rapide, ça pourrait donner ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    %% Première partie - Importation du jeu de données
     
    T =dataset('xlsfile','duree.xls');
     
    %% Seconde partie - Mise en place de la boucle
     
     
    d(1,:) = 0;   
    j=1;   % indice de la durée
     
     
    for individu=1:size(T,2)        % Tu dois effectuer ton script une fois par individu
     
        for i=1:size(T,1);             % pour être sûr de parcourir tout ton vecteur!
            if T(i,individu)~= 0 || any(T(1:i))==0    % si tes données commencent par plusieurs 0
                d(j,individu) = d(j,individu)+(d(j,individu)-T(i,individu));
            elseif T(i)==0 && T(i-1)~=0     % pour éviter de compter plusieurs delta différents si plusieurs 0 se succèdent
                j= j+1;
            end
        end
     
    end

  13. #13
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2014
    Messages : 23
    Points : 7
    Points
    7
    Par défaut
    Merci bien.

    Une erreur apparait une fois que je lance ce script que tu as écrit :

     
    Undefined function 'ne' for input arguments of type 'dataset'.
    
    ...

  14. #14
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    J'avais oublié quelques indices, ce n'est cependant pas pour cela que cela ne marche pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    %% Première partie - Importation du jeu de données
        
    T =dataset('xlsfile','duree.xls');
    
    %% Seconde partie - Mise en place de la boucle
        
    
    d(1,:) = 0;   
    j=1;   % indice de la durée
    
    
    for individu=1:size(T,2)        % Tu dois effectuer ton script une fois par individu
        
        for i=1:size(T,1);             % pour être sûr de parcourir tout ton vecteur!
            if T(i,individu)~= 0 || any(T(1:i,individu))==0    % si tes données commencent par plusieurs 0
                d(j,individu) = d(j,individu)+(d(j,individu)-T(i,individu));
            elseif T(i,individu)==0 && T(i-1,individu)~=0     % pour éviter de compter plusieurs delta différents si plusieurs 0 se succèdent
                j= j+1;
            end
        end
    
    end
    Peux tu nous dire sur quelle ligne ce trouve l'erreur exactement? si ut lances ton script à partir de l'éditeur, la fenêtre de commande t'indiquera la ligne où l'erreur se produit.

  15. #15
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2014
    Messages : 23
    Points : 7
    Points
    7
    Par défaut
    Matlab me dit que l'erreur se trouve là
    Error in boucles_durees (line 15)
            if T(i,individu)~= 0 || any(T(1:i,individu))==0    % si tes données commencent par plusieurs 0
    

  16. #16
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    La fonction ne est l'équivalent de ~=. Le problème ne vient pas du script mais de l'import des données.

    Peux tu écrire dans ta fenêtre de commande et nous dire ce que Matlab renvoie? A priori la fonction dataset n'importe pas les données de façon standard puisqu'elle ne renvoie pas une matrice.

    Tu peux éventuellement utiliser une autre commande pour importer tes données comme importdata.

  17. #17
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2014
    Messages : 23
    Points : 7
    Points
    7
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >> whos T
      Name       Size            Bytes  Class      Attributes
     
      T         60x1              2150  dataset
    Ici mon fichier est simplement avec 1 individu pour tester le script.

    J'ai essayé avec la fonction importdata, l'erreur reste là même...

  18. #18
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Le T que tu utilises est sous format dataset (que je ne connais pas du tout ) ton script marcherait (du moins je le pense) si ton T était sous forme matricielle (tableau de réel) comme par exemple ci dessous:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    whos T
      Name       Size            Bytes  Class     Attributes
     
      T         60x1               480  double
    Quand tu effectues
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    T = importdata('monfichier.xls')
    la fonction importdata te renvoie une structure.

    Typiquement, si tu tapes T dans ta fenêtre de commande Matlab, elle te renverra quelques chose du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >> T
     
    T = 
     
        Feuil1: [60x1 double]
    Pour avoir tes données dans une matrice, il faut ensuite faire

  19. #19
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2014
    Messages : 23
    Points : 7
    Points
    7
    Par défaut
    J'ai fait les recommandations que tu viens de me donner... une nouvelle erreur apparait :

    Attempted to access d(2,1); index out of bounds because numel(d)=1.
    
    Error in boucles_durees (line 18)
                d(j,individu) = d(j,individu)+(d(j,individu)-T(i,individu));
    

  20. #20
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Effectivement! Je suis encore moi même débutant et c'est le genre d'erreur que je corrige en écrivant mon script, désolé que tu aies affaire à moi plutôt qu'à un membre vraiment confirmé!

    Voici les (premiers, et espérons les derniers ) changements à effectuer:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    T= ones(60,1);
    T(1:5) = [0 0 3 4 7];
    
    d(1,:) = zeros(1,size(T,2));   
    j=1;   % indice de la durée
    
    
    for individu=1:size(T,2)        % Tu dois effectuer ton script une fois par individu
        
        for i=1:size(T,1);             % pour être sûr de parcourir tout ton vecteur!
            if T(i,individu)~= 0 || any(T(1:i))==0    % si tes données commencent par plusieurs 0
                d(j,individu) = d(j,individu)+(d(j,individu)-T(i,individu));
            elseif T(i)==0 && T(i-1)~=0     % pour éviter de compter plusieurs delta différents si plusieurs 0 se succèdent
                j= j+1;
                d(j,individu) = 0;
            end
        end

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. selection et écriture de données sous condition avec boucle
    Par braquin dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 25/08/2011, 09h16
  2. script fonctionne avec Firefox mais boucle sous IE6
    Par ignitionflip dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 28/01/2009, 16h10
  3. Script tout simple avec GreaseMonkey
    Par jpascal dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/06/2007, 11h25
  4. script avec boucle for
    Par gloglo dans le forum Langage SQL
    Réponses: 16
    Dernier message: 30/05/2007, 14h30
  5. [AJAX] faire tourner un script php en boucle avec ajax
    Par mitmit dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 05/05/2007, 10h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo