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écomposition d'un entier sur une base b récursif


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2016
    Messages : 2
    Par défaut Décomposition d'un entier sur une base b récursif
    Bonjour,

    Désolée si je ne poste pas au bon endroit! J'ai réalisé un programme qui permet de décomposer un nombre n sur une base b,et qui retourne le résultat sous forme d'un tableau.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    def representation2(n,b):
        c = []
        while n!= 0:
            c.append(n%b)
            n = n//b
        c.reverse()
        return c
    Il fonctionne (même si je n'ai pas réussi à afficher les indentations dans ce message), mais je me demande si on peut le réécrire récursivement?

    Merci d'avance

  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 Visiteusetemporaire Voir le message
    Désolée si je ne poste pas au bon endroit! J'ai réalisé un programme qui permet de décomposer un nombre n sur une base b,et qui retourne le résultat sous forme d'un tableau.
    C'est plutôt une liste.

    Citation Envoyé par Visiteusetemporaire Voir le message
    mais je me demande si on peut le réécrire récursivement?
    On peut écrire pas mal de chose "récursivement":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> def representation(n, b):
    ...     if n < b:
    ...        return [ n ]
    ...     return representation( n//b, b) + [ n % b ]
    ...
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Nouveau candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2016
    Messages : 2
    Par défaut
    C'est vrai que j'ai tendance à confondre les listes et les tableaux. Merci beaucoup pour le code récursif!

Discussions similaires

  1. requetes BUSINESS OBJECT sur une base ACCESS
    Par greatmaster1971 dans le forum Deski
    Réponses: 1
    Dernier message: 06/10/2004, 14h10
  2. [ADO][excel] clé primaire sur une base excel
    Par mandale dans le forum Bases de données
    Réponses: 3
    Dernier message: 02/09/2004, 17h53
  3. Connexion SYSDBA sur une base ou une autre
    Par jack554 dans le forum Administration
    Réponses: 11
    Dernier message: 20/04/2004, 17h11
  4. Filtre sur une base Paradox
    Par mika dans le forum Bases de données
    Réponses: 2
    Dernier message: 11/03/2004, 11h51
  5. Alter user sur une base distante
    Par bilo2000 dans le forum Administration
    Réponses: 13
    Dernier message: 09/03/2004, 17h18

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