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 :

Fraction rationnelle irréductible


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 7
    Par défaut Fraction rationnelle irréductible
    Bonjour je viens vers vous pour quelques questions !

    Je dois faire cet exercice sous python :

    Exercice 9 (Écriture fractionnaire d’un nombre décimal périodique) : On pourra utiliser l’exercice 4
    qui à partir d’un entier n associe son nombre de chiffres.

    1) Écrire une fonction pgcd qui renvoie le PGCD de deux nombres entiers.
    2) Écrire une fonction fraction qui prend en argument u un tuplet d’entiers caractérisant un nombre décimal
    périodique et qui renvoie la fraction rationnelle irréductible correspondante.
    Si x = e, d p p ... de partie entière e, de partie décimale non périodique d et périodique p, le tuplet u sera
    (e,d,p) et si x = e, p p ... n’a pas de partie décimale non périodique d, le tuplet u sera (e,p).

    Pour l'instant j'ai fait le 1) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    def pgcd(a,b) :  
       while a%b != 0 : 
          a, b = b, a%b
       return b
    Par contre pour la 2) je sèche un peu ! C'est à dire que l'argument est un tuplet mais je ne comprend pas ce que je dois renvoyer ! :/
    Je vous remercie pour vos réponses !
    Et vous souhaites de bonnes fêtes de fin d'année !

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Salut,

    Citation Envoyé par Python57 Voir le message
    Par contre pour la 2) je sèche un peu ! C'est à dire que l'argument est un tuplet mais je ne comprend pas ce que je dois renvoyer !
    Soit N un "nombre décimal périodique", on peut représenter sa "notation fractionnaire" par un tuple à 2 ou 3 éléments. Puis on peut (par le calcul) retrouver la fraction i.e. les nombres entiers p et q (donc un tuple à 2 éléments) tels que N = p / q.... et utiliser le pgcd de p et de q pour simplifier.

    Par exemple si N = 1/3, la notation fractionnaire pourra être le tuple (0, 3). Et le boulot de la fonction (à écrire) sera de retrouver p = 1 et q = 3.

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

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 7
    Par défaut Réponse
    Bonjour !

    Tout d'abord je te remercie d'avoir pris le temps de me répondre !
    Et m'excuse du retard de ma réponse !

    Juste je comprends beaucoup mieux grâce à toi et t'en remercie !
    Cependant je ne comprends toujours pas le sens de cette fonction

    C'est du genre ? :

    def fraction(u):
    N = p/q
    pgcd(p,q)
    return p,q ?

    Ou je ne vois pas trop les étapes de la fonction et m'en excuse car c'est sûrement simple mais je ne vois pas :/

    Je te remercie pour ta réponse !
    ET TE SOUHAITES UNE BONNE FIN D'ANNÉE !
    Bonnes fêtes de fin d'année à toi qui me lis

    Affectueusement.

  4. #4
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 216
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    def fraction(u):
    N = p/q
    pgcd(p,q) 
    return p,q ?
    Ici, tu proposes une fonction qui reçoit comme paramètre u, et tu n'utilises pas ce u dans le corps de la fonction... ça ne peut pas marcher.
    Et la suite de la fonction est du même topo.

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Salut,

    Citation Envoyé par Python57 Voir le message
    Ou je ne vois pas trop les étapes de la fonction et m'en excuse car c'est sûrement simple mais je ne vois pas :/
    Il n'y a rien à voir, il faut savoir ce que signifie le côté mathématique de l'opération. Si vous ne le savez pas, Internet est un merveilleux outil pour apprendre. Vous pouvez commencer par la lecture de ce tuto...
    Tant que vous n'avez pas pris le temps de comprendre la chose côté mathématique, difficile d'essayer de la traduire en programme i.e. écrire des instructions qui permettront à la machine de faire ces opérations automatiquement.

    Citation Envoyé par Python57 Voir le message
    Je te remercie pour ta réponse !
    ET TE SOUHAITES UNE BONNE FIN D'ANNÉE !
    Bonnes fêtes de fin d'année à toi qui me lis
    Bon réveillon à toi aussi.

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

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 7
    Par défaut Réponse
    Bonjour !

    Merci pour vos réponses tout d'abord.

    Ensuite j'ai regarder et je comprends toute la démarche, cependant c'est sous python que ça me pose un petit problème je n'arrive pas a convertir mon tuplet u (e,d,p) ou (e,p) qui est l'argument en un nombre périodiques x = e,dpppp ou x = e,ppppp

    Merci pour votre réponse !

  7. #7
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Citation Envoyé par Python57 Voir le message
    Ensuite j'ai regarder et je comprends toute la démarche, cependant c'est sous python que ça me pose un petit problème je n'arrive pas a convertir mon tuplet u (e,d,p) ou (e,p) qui est l'argument en un nombre périodiques x = e,dpppp ou x = e,ppppp
    Pourquoi voulez vous faire çà?
    (e, d, pppp) ou (e, pppp) sont des représentations avec le langage Python de nombres périodiques que l'on notera e,dpppp ou e,pppp sur une feuille de papier.
    notez que j'ai préféré souligner le groupe de chiffre qui se répètent plutôt que de le surligner... Car c'était plus facile. et vous montrez qu'à partir du moment où vous pouvez distinguer les trois morceaux e, d, pppp du nombre et qu'on peut "convenir" de ce qui correspond à quoi...

    Donc vous avez un nombre périodique, et maintenant, il faut retrouver la fraction.

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

Discussions similaires

  1. Approximation par fractions rationnelles
    Par stylequick dans le forum MATLAB
    Réponses: 3
    Dernier message: 25/03/2010, 08h13
  2. [RegEx] Images et expression rationnelle
    Par Invité dans le forum Langage
    Réponses: 7
    Dernier message: 30/10/2005, 15h50
  3. [Debutant] Problème de fraction dans un programme
    Par SAKDOSS dans le forum Débuter
    Réponses: 4
    Dernier message: 22/10/2005, 18h38
  4. Réponses: 2
    Dernier message: 21/02/2005, 10h42
  5. [langage] Expressions rationnelles (perl/C)
    Par ma2th dans le forum Langage
    Réponses: 11
    Dernier message: 02/08/2004, 18h07

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