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

Turbo Pascal Discussion :

[Débutante] Exercice sur l'héritage


Sujet :

Turbo Pascal

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 5
    Points : 2
    Points
    2
    Par défaut [Débutante] Exercice sur l'héritage
    Bonjour, bonsoir :
    je suis nouvelle dans ce forum et débutante avec la programmation d'informatique, alors j'ai un exercice pour mon devoir et je n'ai pas pu l'ouvrir.
    SVP j'aimerais que quelqu'un m'aide à trouver la solution !!

    * Il est un peu long *
    TEXTE D'EXERCICE :
    Les échecs fournissent un exemple classique d’application de l’héritage qui est riche. Cet exercice aborde seulement une partie du sujet.

    1- Créer la classe PieceEchec qui s’intéresse au déplacement d’une pièce. Elle prend comme champs : la position des cases de départ et d’arrivée lors d’un déplacement, ainsi que le nom de la pièce. La position d’une case est définie par deux entiers compris entre 1 et 8 : le numéro de la rangée et celui de la colonne.
    La classe PieceEchec possède les mèthodes suivantes :
    • Norme ()(norme du dèplacement ) retournant le carré de la distance entre les cases de départ et d’arrivée
    • EstValide() qui retourne 1 si la case d’arrivée est dans l’échiquier et 0 sinon (on peut aussi utiliser un booléen au lieu d’un nombre entier)
    • Tostring() et imprimer()

    Cette classe comporte également un constructeur pour initialiser les champs et un constructeur vide.

    2- Quand un cavalier se déplace, la norme du déplacement vaut 5. Créer une classe Cavalier étendant la classe PieceEchec. Dont le constructeur fait appel à celui de la super-classe. De même, la méthode estValide() de cavalier utilisera la méthode estValide() de la super-classe.

    N.B : pour traiter ces questions, il est nécessaire de recourir au if.

    SUGGESTION : On peut poursuivre l’étude de cette question en ajoutant d’autres pièces. Le fou se déplace en diagonale alors que la tour utilise les rangées et les colonnes. La reine a les capacités d’une tour et d’un fou. La classe Reine ne peut pas hériter des classes Fou et Tour, car l’héritage multiple est impossible. Le roi a les capacités de déplacement d’une reine mais il ne peut se transporter que sur une case contiguë (sauf au moment du roque). On peut donc concevoir la classe Roi comme une sous-classe de Reine, ou se contenter de qu’un roi est une pièce dont sa norme de déplacement vaut 1 ou 2 .

  2. #2
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 465
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 465
    Points : 4 312
    Points
    4 312
    Par défaut
    Ne compte pas sur ce forum pour faire ton exercice en entier. Montre nous où tu en es et explique nous ce qui te bloque pour avancer.
    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

  3. #3
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 945
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 945
    Points : 5 659
    Points
    5 659
    Par défaut
    Joe,

    Tu as dû avoir des cours te permettant de traiter ton problème, d'autant plus que sans être hors de portée, cet exercice n'est pas destiné aux vrais débutants, ce que tu affirmes être.
    Si les cons volaient, il ferait nuit à midi.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 12
    Points
    12
    Par défaut
    Salut à tous et bonne année. Je suis encore un bleu en informatique alors pardonnez-moi les erreurs.

    Bon, voilà, j'ai le meme exo et voici ce que j'ai pu trouver :
    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
    23
    24
    program jeuEchec;
     
    type
          PieceEchec = object
                             NomPiece:string;
                             rangeDepare:integer;
                             rangeArrive:integer;
                             coloneDepare:integer;
                             coloneArrive:integer;
                             function norme:integer;
                             procedure estValide;
                             tostring?
                             imprime?
                             end;
     
    function PieceEchec.norme:integer;
    begin
    norme:=(rangeArrive-rangeDepare)+(coloneArrive-coloneDepare);
    end;
    procedure PieceEchec.estValide;
    begin
    if 1<=rangeArrive>=8 and 1<=coloneArrive=>8 then
    write('1') else write('0');
    end;
    Mon problème est que quand j'arrive aux méthodes tostring et imprime, je ne connais ni leur fonction ni leur rôle dans cet algo.
    Merci d'avance pour votre soutien

  5. #5
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 945
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 945
    Points : 5 659
    Points
    5 659
    Par défaut
    Hei,
    Citation Envoyé par darkslew Voir le message
    remarque je donne mon devoir la semain prochaine alors veuillez repondre le plus tot possible et desole pou le derangement
    1, 2, 3 soleil.

    Perdu.
    Si les cons volaient, il ferait nuit à midi.

  6. #6
    Candidat au Club
    Inscrit en
    Janvier 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par wormful_sickfoot Voir le message
    Ne compte pas sur ce forum pour faire ton exercice en entier. Montre nous où tu en es et explique nous ce qui te bloque pour avancer.
    qui me bloque , je n'arrive même pas à commencer ou bien cmt . j'ai trouvé la solution de cette programmation mais avc le langage java , alors moi je devais le faire en Pascal .

  7. #7
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut
    Bonjour
    Citation Envoyé par sandra-n Voir le message
    qui me bloque , je n'arrive même pas à commencer ou bien cmt . j'ai trouvé la solution de cette programmation mais avc le langage java , alors moi je devais le faire en Pascal .
    -La bonne nouvelle: c'est que si tu comprend déjà le principe de l'Orienté Objet ça sera un bon début, ce qui fait que pour un langage dédié à l'OO comme Java un débutant devrait s'en sortir sans trop de mal
    -La mauvaise nouvelle: Pour un débutant en Pascal comme tu le dit et comme droggo l'a souligner c'est pas forcement donné car il faut d'abord comprendre le principe de l'OO et ensuite savoir comment ça marche en Pascal:
    • Savoir comment déclarer un objet en Pascal
    • Savoir comment utiliser un objet
    • Connaitre les mots clés comme :Object, Constructor, etc
    • Savoir modéliser les notions de classe
    • etc


    En gros il y a un minium à apprendre avant de se lancer la dedans

    @darkslewEn y regardant ce qui saute à l'œil pour la signification de méthodes c'est:
    • tostring?=>Permettre à définir le contenu d'un objet donc une fonction qui renverra un String
    • imprime?=>Permettre à afficher un objet par exemple donc une procédure


    Cordialement
    Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! !

    Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 12
    Points
    12
    Par défaut
    merci boucau krachik sa enlève les point désclamations mais si tu me les donne dans un exemple je pourrait mieux les comprendre

    sondra_n ta dit que tu avait la solution en java tu pourrait me la poster je trouverais peut être sa traduction ou moins je saura se que je doit faire

  9. #9
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut
    Bonjour
    Citation Envoyé par darkslew Voir le message
    merci boucau krachik sa enlève les point désclamations mais si tu me les donne dans un exemple je pourrait mieux les comprendre

    sondra_n ta dit que tu avait la solution en java tu pourrait me la poster je trouverais peut être sa traduction ou moins je saura se que je doit faire
    Pour faire bien, le mieux c'est que tu structures en Unité avant de définir ton Objet:
    Exemple

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    unit echec;
     
    INTERFACE
     
    uses crt;
     
    type
      pieceEchec=object
       private {private pour dire que les champs d'action des déclarations qui suivent sont limités à cette unité seulement}
           nomPiece:string;
           rangeDepare:integer;
           rangeArrive:integer;
           coloneDepare:integer;
           coloneArrive:integer;
     
       public
           { Tu as oubliés tes contructeurs ennoncés dans l'exercice 
       Exemple d'un constructeur vide
           constructor init;}
           function norme:integer;
           procedure estValide;
           function toString:String;
           procedure imprime;
      end;
     
    type piece=^pieceEchec; {Creer un pointeur sur l'objet, on pourra des lors utiliser le type piece dans un autre unité ou programme}
     
     IMPLEMENTATION
    {Ecrire tes constructeurs...........}
     
    {Definir tes fonctions ou procedure ...............}
    {Un exemple pour pas tout écrire}
    function pieceEchec.toString:String;
    var ch:String;
    begin
      Str(rangeDepare,ch);{Convertir l'entier en chaine de caractere}
      toString:=Concat(nomPiece,':',ch);{ a titre d'exemple }
    end;
     
    {Procedure imprime}
    procedure pieceEchec.imprime;
    begin
      {Je te laisse le soin d'ecrire ce qu'on peut mettre ici}
    end;
     
     
    begin
    end.
    Voila en gros :
    Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! !

    Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 12
    Points
    12
    Par défaut
    merci infiniment krachik tu as enlevé un pois très important de mes epoules voici se que j ai parvenue a faire jusqu'à présent


    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    unit échec;
     
    INTERFACE
     
    uses crt;
     
    type
           pieceEchec= object
                                 private 
           nomPiece:string;
           rangeDepare:integer;
           rangeArrive:integer;
           coloneDepare:integer;
           coloneArrive:integer;
           constructor init;
                                  public
           function norme:integer;
           fuction estValide:boolean;
           function toString:String;
           procedure imprime;
    end;
     
    type piece=^pieceEchec; 
     
     IMPLEMENTATION
    
    constructor PieceEchec.init;
    Begin
    rangeDepare:=1;   {je defenie l'emplacement de chaque pièce au    
    coloneDepare:=1;       demarrage du jeux}
    end;
    
    function PieceEchec.norme:integer;
    begin
    norme:=sqr(rangeArrive-rangeDepare)+sqr(coloneArrive-coloneDepare);
    end;
    
    function PieceEchec.estValide:boolean;
    begin
    if 1<=rangeArrive>=8 and 1<=coloneArrive=>8 then
    estValide:=true else estValide:=false;
    end;
    
    function pieceEchec.toString:String;
    var ch1,ch2:String;
    begin
      Str(rangeArrive,ch1);    {j affiche le  nom de la piece
      Str(coloneArrive,ch2);     et son nouveau emplacement}
      toString:=Concat(nomPiece,': R',ch1,' - C',ch2);
    end;
     
    
    procedure pieceEchec.imprime;
    begin
      write(tostring);
    end;
    
    end.
    
    program JeuxDechec;
    uses Echec;
    type
          cheval = object(PieceEchec)
                         constructor init;
                         procedure deplace;
                      end;
    
    constructor cheval.init;
    begin
    NomPiece:='cheval';
    RangeDepare:=3;
    ColoneDepare:=1;
    end;
    
    procedure cheval.deplace;
    begin
    RangeArrive:=RangeDepare+2;
    ColoneArrive:=ColoneDepare+1;
    end;
    
    
    var chevalg:^cheval;
    BEGIN
    new(chevalg, init);
    chevalg.deplace;
    chevalg.norme;
    chevalg.estValide;
    chevalg.tosring;
    chevalg.imprime;
    end.
    est ce correcte jusqu'à présent?
    mai quelle est le rôle du constructeur vide ?
    est il de vérifier si le nouveau emplacement est vide ou autre chose?
    merci d avance

  11. #11
    Candidat au Club
    Inscrit en
    Janvier 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par krachik Voir le message
    Bonjour


    -La bonne nouvelle: c'est que si tu comprend déjà le principe de l'Orienté Objet ça sera un bon début, ce qui fait que pour un langage dédié à l'OO comme Java un débutant devrait s'en sortir sans trop de mal
    -La mauvaise nouvelle: Pour un débutant en Pascal comme tu le dit et comme droggo l'a souligner c'est pas forcement donné car il faut d'abord comprendre le principe de l'OO et ensuite savoir comment ça marche en Pascal:
    Bonsoir :
    Ben alors je ne suis même pas une informaticienne , j'ai seulement un module de l'informatique et pour la première Fois que je le prenne ... plutôt je l'ai pris l'année dernière mais ça ne se voit aucun contacte entre les deux ans !!!

  12. #12
    Candidat au Club
    Inscrit en
    Janvier 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 5
    Points : 2
    Points
    2
    Par défaut class PiecEchec en java
    voici le programme en java si vous pouvez le transformer en pascal.
    d'avance
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    Import java .util.* ;
    Class PieceEchec{
    Protected int xDep ;
    Protected int yDep ;
    Protected int xArr ;
    Protected int yArr ;
    Protected String nomPiece ;
     
    Public PiecEchec (int Xd, int Yd, int Xa, int Ya)
    {
     
             xDep = Xd ;
             yDep = Yd ;
             xArr = Xa ;
             yArr = Ya ;
    }
     
    public int estValide()
    {
              if ((xArr<=8) && (xArr>=1) && (yArr<=8) && ( yArr>=1))
                     return 1 ;
              else return 0 ;
    }
    public int norme ()
    {
              return ((xArr – xDep) * (xArr – xDep) + (yArr – yDep) * (yArr – yDep)) ;
    }
    public void imprimer() {
              system.out.println("nom :"+nom) ;
              system.out.println("debut : ("+pos_dep_x+","+pos_dep_y+")") ;
              system.out.println("fin : ("+pos_fin_x+","+pos_fin_y+")") ;
        }
    }
    }

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 12
    Points
    12
    Par défaut
    merci sandra_n pour la soluce sa me montre que j ai raison pour le moment
    mais cette soluce est incomplète car l algo ne fait que de commencer

  14. #14
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 945
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 945
    Points : 5 659
    Points
    5 659
    Par défaut
    Hai,
    Citation Envoyé par sandra-n Voir le message
    voici le programme en java si vous pouvez le transformer en pascal.
    d'avance
    Ça revient encire et toujours à nous demander de faire TON travail.

    Si tu tiens à ne rien d'autre que du copier/coller pour obtenir une bonne note, cherche donc une solution déjà en Pascal.
    Si les cons volaient, il ferait nuit à midi.

  15. #15
    Candidat au Club
    Inscrit en
    Janvier 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par droggo Voir le message
    Hai,

    Ça revient encire et toujours à nous demander de faire TON travail.

    Si tu tiens à ne rien d'autre que du copier/coller pour obtenir une bonne note, cherche donc une solution déjà en Pascal.
    t'as dit -nous- ben je crois pas que ton rôle dans ce forum aider !!! mais critiquer siiiiiii

  16. #16
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut
    Bonjour
    Citation Envoyé par sandra-n Voir le message
    t'as dit -nous- ben je crois pas que ton rôle dans ce forum aider !!! mais critiquer siiiiiii
    Alors je crois qu'on a un soucis de compréhension, on aide d'accord mais on veut que la personne qui demande l'aide fasse aussi un effort , et ce que dit droggo n'est pas de la critique
    Jusque ici tu as présenté le problème et rien ne laisse voir que tu cherches à comprendre l'héritage, que tu dises que tu ne sais pas manipuler les objets en Pascal c'est pas grave, mais tu n'as écris aucun algorithme pour traduire ce que tu veux faire. J'avais ennoncer dans un de mes posts les notions que tu devrait avoir. On pourrait te traduire intégralement le programme Java en Pascal mais je vois pas en quoi ça t'aiderait a comprendre l'héritage en Pascal.
    Alors comme dit on ne fera pas TON travail à ta place

    Revenons au problème en reprenant ton énnoncé:
    1- Créer la classe PieceEchec qui s’intéresse au déplacement d’une pièce. Elle prend comme champs : la position des cases de départ et d’arrivée lors d’un déplacement, ainsi que le nom de la pièce. La position d’une case est définie par deux entiers compris entre 1 et 8 : le numéro de la rangée et celui de la colonne.
    1-Comprendre la notion de classe, d'objet, savoir déclarer un objet(j'ai donné un exemple de déclaration d'objet)
    On peut retenir les attributs de l'objet:
    • position de case de depart
    • position de case d'arrivée
    • nom de la pièce

    darkslew à donné une méthode de modéliser cette partie de position, on pourrait aussi definir un enregistrement de position avec comme champs la rangée et la colone
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
       Position=record
         rangee:1..8;
         colone:1..8;
       end;
    Ensuite on aurait fait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     ObjetPiece
           NomPiece:Chaine
           PositionDepart:Position;
           PositionArrive:Position;
          //AUtres declarations (constructeurs, procedures/fonctions)
      FinObjetPiece
    Ensuite
    La classe PieceEchec possède les mèthodes suivantes :

    * Norme ()(norme du dèplacement ) retournant le carré de la distance entre les cases de départ et d’arrivée
    * EstValide() qui retourne 1 si la case d’arrivée est dans l’échiquier et 0 sinon (on peut aussi utiliser un booléen au lieu d’un nombre entier)
    * Tostring() et imprimer()

    Cette classe comporte également un constructeur pour initialiser les champs et un constructeur vide.
    Une fois que tu connais la structure d'un Objet et que tu sais qu'il peut contenir un constructeur des procedures/fonctions tu fais de meme pour les fonctions énnoncées dans l'énnoncé
    Je te laisse montrer ce que tu fais jusque là pour qu'on puisse t'aide


    @darkslew Il s'agit d'une unité et une unité n'est pas un programme executable, il faut le compiler pour le transformer en fichier.TPU et ensuite faire appel à ton unité dans le uses dans le programme pour ensuite utiliser les types dont tu as besoin

    Cordialement
    Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! !

    Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells

Discussions similaires

  1. [Débutant] Exercice sur les nombres en précision arbitraire
    Par LeFredd dans le forum Algorithmes et structures de données
    Réponses: 14
    Dernier message: 21/02/2015, 14h11
  2. Exercice sur l'héritage
    Par khaled_prg dans le forum Débuter avec Java
    Réponses: 42
    Dernier message: 01/02/2012, 19h59
  3. [Débutant] exercice sur la récursivité
    Par neufrdb dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 03/03/2011, 17h59
  4. Question sur l'héritage (débutant en C++)
    Par beegees dans le forum C++
    Réponses: 19
    Dernier message: 30/03/2008, 14h45
  5. [POO] Problème dans un exercice sur l'héritage
    Par FabaCoeur dans le forum C++
    Réponses: 2
    Dernier message: 05/05/2007, 17h09

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