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

Python Discussion :

débutant, pb de polymorphisme


Sujet :

Python

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2016
    Messages : 2
    Points : 1
    Points
    1
    Par défaut débutant, pb de polymorphisme
    Bonjour,
    D'après un exercice de M. Swinnen: avec 2 classes Point et Rect, je n'arrive pas à afficher les coordonnées du centre d'un rectangle.
    Merci pour votre aide.
    Code python : 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
    class Point(object):        
        def __init__ (self, xx=0, yy=0):              
            self.x=xx
            self.y=yy        
        def coord(self) :
            return ("({}, {})".format (self.x,self.y))
     
    class Rect (object):
        "rectangle défini avec long, larg et coord du sommet (haut gauche)"
        def __init__ (self, L,l,x,y):
            Point.__init__(self,x,y)
            self.long=L
            self.larg=l
            self.sommet=Point(x,y)
            self.centr=Point (0,0)
        def centre (self,centr): 
            x1=self.sommet.x+self.long /2                              
            y1=self.sommet.y+self.larg /2
            centr=Point(x1,y1)
            return centr
     
    A, B = Point(3, 5), Point (2,6)    
    r1 = Rect(50,35,12,27)     
    print ('Le rectangle : L x l =',r1.long,'x',r1.larg,'de sommet ',\
            r1.sommet.coord(),' a pour centre ???',r1.centr.coord())

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 281
    Points : 36 768
    Points
    36 768
    Par défaut
    Salut,

    Citation Envoyé par jean.lous Voir le message
    D'après un exercice de M. Swinnen: avec 2 classes Point et Rect, je n'arrive pas à afficher les coordonnées du centre d'un rectangle.
    Ca serait bien d'être un peu plus précis sur la nature du problème que vous rencontrez. La seule chose qu'on peut dire c'est que vous avez défini une méthode pour calculer le centre qui n'est jamais appelée mais pas facile de voir le rapport avec le polymorphisme.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2016
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,



    Ca serait bien d'être un peu plus précis sur la nature du problème que vous rencontrez. La seule chose qu'on peut dire c'est que vous avez défini une méthode pour calculer le centre qui n'est jamais appelée mais pas facile de voir le rapport avec le polymorphisme.

    - W
    Je vous remercie d'avoir répondu aussi rapidement.
    Je voudrais faire afficher dans la dernière ligne, les coordonnées du centre du rectangle, en utilisant la fonction centre de la classe Rect et la méthode coord() de la classe Point.
    Merci pour votre réponse

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 281
    Points : 36 768
    Points
    36 768
    Par défaut
    Citation Envoyé par jean.lous Voir le message
    Je voudrais faire afficher dans la dernière ligne, les coordonnées du centre du rectangle, en utilisant la fonction centre de la classe Rect et la méthode coord() de la classe Point.
    Dans votre code, vous n'essayez même pas.
    Pourtant, définir une méthode et l'appeler est raconté dans le début du chapitre.
    Essayez de le relire et de comprendre un peu ce qu'il raconte...

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. [débutant] Question sur le polymorphisme
    Par coyotte507 dans le forum C++
    Réponses: 12
    Dernier message: 25/02/2007, 14h10
  2. Réponses: 4
    Dernier message: 25/01/2007, 21h11
  3. [Héritage] [Polymorphisme] Question de débutant ?
    Par TSnarfK dans le forum Langage
    Réponses: 9
    Dernier message: 12/09/2006, 15h39
  4. débutant java Polymorphisme
    Par Bba_M dans le forum Langage
    Réponses: 8
    Dernier message: 12/06/2006, 09h39
  5. Réponses: 2
    Dernier message: 25/07/2004, 23h24

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