Partage
  • Partager sur Facebook
  • Partager sur Twitter

Implémenter un type de données abstrait sous Python

    14 novembre 2011 à 9:08:16

    Bonjour,

    Dans le cadre d'un projet en cours, il m'est demandé d'implémenter un type de données abstrait représentant des rationnels positifs ou nuls.
    J'ai déjà calculé sur python le PGCD.

    Avez-vous une idée de comment représenter cette abstraction, avec les données suivantes??
    PRational(numerator, denominator)
    numerator()
    denominator()
    4 reduce()
    5 comparable(other)
    toString()
    add(other)
    mul(other)
    div(other)

    Merci de votre aide!!
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      14 novembre 2011 à 9:59:46

      Je comprend pas ce que tu veux dire avec tes reduce(), add(), mul() etc...

      mais pour vérifier qu'un nombre est positif ou nul c'est très simple

      Il est où le problème en fait? T'as fais un code? un algo? c'est un travail scolaire?
      • Partager sur Facebook
      • Partager sur Twitter
        14 novembre 2011 à 15:22:26

        @fred1599 : Ce qu'il veur faire c'est implémenter les rationnels par lui-même (j'imagine que sinon beaucoup de bibliothèques le font déjà).

        Vu l'exo, il semble qu'il t'est demandé de faire une classe en utilisant les capacités objets du langage Python. Puisque les méthodes te sont déjà données, tu n'as plus qu'à réfléchir aux données dont tu as besoin pour stocker un rationnel (ce qui est très simple) puis d'implémenter les méthodes.
        • Partager sur Facebook
        • Partager sur Twitter
          14 novembre 2011 à 17:46:57

          Bien sûr, j'ai déjà réalisé un programme pour calculer le PGCD, il fonctionne très bien:

          def gcd (a,b):
          a=int(a)
          b=int(b)
          if a%b == 0:
          return b
          else:
          return gcd (a,a%b)


          def nume (a,gcd):
          num=0
          num= a/gcd (a,b)
          return num

          def deno (b,gcd):
          den=1
          den= b/gcd (a,b)
          return den

          C'est l'implémentation en type de données abstraits que je n'arrive pas :-/
          • Partager sur Facebook
          • Partager sur Twitter

          Implémenter un type de données abstrait sous Python

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown