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 :

Programme pour traduire un nombre en lettres


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2020
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2020
    Messages : 9
    Points : 3
    Points
    3
    Par défaut Programme pour traduire un nombre en lettres
    Ce programme consiste à renvoyer l'écriture en lettres d'un nombre rentrer par un utilisateur.

    C'est un énonce le 4 question:
    ● Créer un dictionnaire NOMBRES_LETTRES ayant :
    •Pour clé les nombres de 0 à 16, les dizaines entre 20 et 60(inclus)
    •Pour valeur la correspondance en lettres
    Cette question est déjà faite.

    ●Crée une fonction "décomposition()" ayant en paramètre un nombre et donnant sa décomposition en puissance de 10 sous forme d'une file.
    Exemple: decomposition(4840) donnera 0 0 0 0 0 0 0 0 4 8 4 0
    Cette question est faite mais pas sous forme de file

    ●Crée une fonction "classe()" qui :
    •prend 3 chiffres en paramètre: le premier correspondant au centaines, le deuxième au dizaine et le troisième au unités.
    •retourne une chaîne de caractères avec l'écriture en lettres de ce nombre
    Je bloque a cette question

    ●Crée une fonction "traduction()" ayant en paramètre un nombre (de 12 chiffres maximum) et affichant son écriture en lettres
    Je pense qu'il faut la fonction "classe()" pour faire cette question

    Si vous pouvez m'aider pour cette exercice, et aussi me dire si l'on peut envoyer des photo de son programme ou alors de l'énoncé.

    Merci d'avance

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    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 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Citation Envoyé par TheFalqo Voir le message
    Si vous pouvez m'aider pour cette exercice, et aussi me dire si l'on peut envoyer des photo de son programme ou alors de l'énoncé.
    Lorsque vous éditez un message vous avez une 3 barres d'outils au dessus de la fenêtre de saisie.
    Si vous baladez le pointeur de la souris au dessus des symboles, ils vous indiquent ce qu'ils font.
    Pour insérer du code, c'est le #.

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

  3. #3
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 689
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 689
    Points : 30 983
    Points
    30 983
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par TheFalqo Voir le message
    ●Crée une fonction "classe()" qui :
    •prend 3 chiffres en paramètre: le premier correspondant au centaines, le deuxième au dizaine et le troisième au unités.
    •retourne une chaîne de caractères avec l'écriture en lettres de ce nombre
    Je bloque a cette question
    Tu prends chaque chiffre et tu l'analyse par rapport à tes possibilités. 892 c'est "huit cent" puis "quatre-vingt" puis "douze". Ok pour trouver "quatre-vingt" c'est pas évident mais c'est à toi de trouver et tester les cas particuliers par rapport à ton dictionnaire pour arriver à cette solution

    Citation Envoyé par TheFalqo Voir le message
    ●Crée une fonction "traduction()" ayant en paramètre un nombre (de 12 chiffres maximum) et affichant son écriture en lettres
    Je pense qu'il faut la fonction "classe()" pour faire cette question
    Evidemment. Dans ce genre de devoir, chaque étape est là pour aider à l'étape suivante. Le nombre (par exemple) 480 882 756 c'est "480" en lettres suivi de "millions" puis "882" suivi de "mille" puis "756" => il te suffit de découper le nombre en blocs de 3 et passer chaque bloc par la fonction "classe()".

    Citation Envoyé par TheFalqo Voir le message
    et aussi me dire si l'on peut envoyer des photo de son programme ou alors de l'énoncé.
    Tu peux mettre des photos de l'énoncé si tu veux mais bon, vu ce que tu en as décrit on a tous bien compris le truc et ça n'apportera aucune plus-value. Pour le code,
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  4. #4
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2020
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2020
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par TheFalqo Voir le message
    ●Crée une fonction "décomposition()" ayant en paramètre un nombre et donnant sa décomposition en puissance de 10 sous forme d'une file.
    Exemple: decomposition(4840) donnera 0 0 0 0 0 0 0 0 4 8 4 0
    Cette question est faite mais pas sous forme de file
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    def decomposition(n):
        n=[int(i) for i in str(n)]
        L=[0,0,0,0,0,0,0,0,0,0,0,0]
        long=len(L)-1
        long2=len(n)-1
        for i in range(long2+1):
            L[long-i]=n[long2-i]
        for i in range(long+1):
            L[i]=str(L[i])
        L=' '.join(L)
        return (L)
    Pour la premier fonction j'ai fait ceci, je ne sais pas si il y a des chose a améliorer ou pas

  5. #5
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2020
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2020
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par TheFalqo Voir le message
    ●Crée une fonction "classe()" qui :
    •prend 3 chiffres en paramètre: le premier correspondant au centaines, le deuxième au dizaine et le troisième au unités.
    •retourne une chaîne de caractères avec l'écriture en lettres de ce nombre
    Je bloque a cette question
    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
    def classe(n):
        T=[]
        n=[int(i) for i in str(n)]
        if len(n)==3 and n[1]==0 and n[2]==0:
            T.append((Nombres_Lettres.get(n[0]),"cents"))
            for i in range(len(T)):
                T[i]=str(T[i])
            T='-'.join(T)
        elif len(n)==3 and n[1]==8 and n[2]==0:
            T.append((Nombres_Lettres.get(n[0]),Nombres_Lettres.get(4),Nombres_Lettres.get(20)))
            for i in range(len(T)):
                T[i]=str(T[i])
            T='-'.join(T)
        elif len(n)==3 and n[1]==9:
            T.append((Nombres_Lettres.get(n[0]),Nombres_Lettres.get(4),Nombres_Lettres.get(20),Nombres_Lettres.get(n[2]+10)))
            for i in range(len(T)):
                T[i]=str(T[i])
            T='-'.join(T)
    Voici ce que j'ai testé pour cette fonction(je ne met pas tout car sinon trop long mais le reste est base sur ce que j'ai mis la) mais le résultat attendu n'est pas du tout bon, avec ce code j'obtient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> classe(380)
    "('trois', 'quatre', 'vingt')"
    >>> classe(390)
    "('trois', 'quatre', 'vingt', 'dix')"

  6. #6
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 952
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 952
    Points : 9 281
    Points
    9 281
    Par défaut
    hello,
    Citation Envoyé par TheFalqo Voir le message
    Ce programme consiste à renvoyer l'écriture en lettres d'un nombre rentrer par un utilisateur.
    ●Crée une fonction "décomposition()" ayant en paramètre un nombre et donnant sa décomposition en puissance de 10 sous forme d'une file.
    Exemple: decomposition(4840) donnera 0 0 0 0 0 0 0 0 4 8 4 0
    Cette question est faite mais pas sous forme de file
    Si tu veux en savoir plus sur les files tu peux aller voir ici par exemple.
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  7. #7
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2020
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2020
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par jurassic pork Voir le message
    hello,

    Si tu veux en savoir plus sur les files tu peux aller voir ici par exemple.
    j'ai essaye ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    n=[int(i) for i in str(n)]
        queue=[]
        for i in range(12):
            queue.append(0)
        for k in range(len(n)):
            queue.pop(0)
            queue.append(n[k])
        print(queue)
    Je trouve le code plus court mais il faudrait ajouter 1 ou 2 ligne pour obtenir le resultat attendu car avec ce code j'obtient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> decomposition (4840)
    [0, 0, 0, 0, 0, 0, 0, 0, 4, 8, 4, 0]
    Donc il faudrait reussir a enlever les [] et aussi les virgule

  8. #8
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 689
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 689
    Points : 30 983
    Points
    30 983
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par TheFalqo Voir le message
    Voici ce que j'ai testé pour cette fonction(je ne met pas tout car sinon trop long mais le reste est base sur ce que j'ai mis la) mais le résultat attendu n'est pas du tout bon, avec ce code j'obtient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> classe(380)
    "('trois', 'quatre', 'vingt')"
    >>> classe(390)
    "('trois', 'quatre', 'vingt', 'dix')"
    Mouais. Me semble que la fonction classe() devrait avoir un return quelque part pour renvoyer un truc à l'utilisateur (un affichage n'est pas synonyme d'une valeur retournée). Ensuite, si s=('trois', 'quatre', 'vingt', 'dix') (un tuple donc) et que je veux l'afficher sous forme de string, suffit d'écrire print(" ".join(s)).

    Citation Envoyé par TheFalqo Voir le message
    Je trouve le code plus court mais il faudrait ajouter 1 ou 2 ligne pour obtenir le resultat attendu car avec ce code j'obtient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> decomposition (4840)
    [0, 0, 0, 0, 0, 0, 0, 0, 4, 8, 4, 0]
    Donc il faudrait reussir a enlever les [] et aussi les virgule
    Ne te focalise pas sur ce qui est affiché, c'est du détail. Un affichage n'est qu'un enrobage particulier d'un résultat, or ce qui compte c'est le résultat. Si le résultat est bon, tu pourras toujours l'afficher comme tu en as envie => s=[0, 0, 0, 0, 0, 0, 0, 0, 4, 8, 4, 0]; print(s); print("".join(str(x) for x in s)).

    Et par exemple pour s=('trois', 'quatre', 'vingt', 'dix'), si on veut l'afficher de façon littéralement correcte (pas de "s" à "cent" sauf si plusieurs centaines et pas de chiffre derrière): print("%s cent%s %s" % (s[0], "" if s[0] == "un" or any(s[1:]) else "s", " ".join(s[1:]))).
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  9. #9
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2020
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2020
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Sve@r Voir le message

    Et par exemple pour s=('trois', 'quatre', 'vingt', 'dix'), si on veut l'afficher de façon littéralement correcte (pas de "s" à "cent" sauf si plusieurs centaines et pas de chiffre derrière): print("%s cent%s %s" % (s[0], "" if s[0] == "un" or any(s[1:]) else "s", " ".join(s[1:]))).
    Je n'ai pas trop compris comment fonctionne le programme, si c'est possible de m'expliquer ?

  10. #10
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 689
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 689
    Points : 30 983
    Points
    30 983
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par TheFalqo Voir le message
    Je n'ai pas trop compris comment fonctionne le programme, si c'est possible de m'expliquer ?
    Ben il faut aussi lire des tutos sur les strings !!!

    J'affiche une string formatée. Chaque "%s" est remplacé ensuite par une expression placée après le "%" dans l'ordre.
    Donc le premier "%s" est alors remplacé par s[0] (ici "trois") ce qui donne "trois cent".
    Le second "%s" est remplacé par "" if s[0] == "un" or any(s[1:]) else "s" c'est à dire "rien si s[0] == un (parce que pas de "s" à "un cent") ou s'il y a (any) quelque chose après ; sinon il faut un "s" (exemple 200 donne "deux cents" mais 250 donne "deux cent cinquante" sans "s").
    Le 3° "%s" est remplacé par ce qui reste (ici "vingt dix"), ce qui donne donc "trois cent quatre vingt dix".
    Ceci dit, c'est pas ce qu'il y a de mieux car par exemple "un", "dix", "neuf" donnera "un cent dix neuf" alors que la bonne formulation est "cent dix-neuf" mais ça peut te donner des idées.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  11. #11
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2020
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2020
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    ok c'est plus clair maintenant, je vais refaire des test

  12. #12
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 952
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 952
    Points : 9 281
    Points
    9 281
    Par défaut
    hello,
    Citation Envoyé par TheFalqo Voir le message
    j'ai essaye ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    n=[int(i) for i in str(n)]
        queue=[]
        for i in range(12):
            queue.append(0)
        for k in range(len(n)):
            queue.pop(0)
            queue.append(n[k])
        print(queue)
    Pour simplifier l'initialisation de queue avec 12 zéros tu peux utiliser ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    queue=[0]*12 # initialisation de la liste avec 12 zéros
    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  13. #13
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2020
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2020
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    J'ai bien avancer dans le programme, le code n'est pas très beau mais fonctionnelle mais j'aurais une autre question.

    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
    elif len(n)==3:
            if n[0]==0 or n[0]==1:
                None
            else:
                T.append(Nombres_Lettres.get(n[0]))
            T.append("cent")
            if n[1]!=0 and n[2]!=0:
                if n[1]>6:
                    T.append(Nombres_Lettres.get(10))
                    T.append(Nombres_Lettres.get(n[1]))
                else:
                    T.append(Nombres_Lettres.get(n[1]+10))
            elif n[1]!=0 and n[2]==0:
                if n[1]>6:
                    T.append(Nombres_Lettres.get(10))
                    T.append(Nombres_Lettres.get(n[2]))
                else:
                    T.append(Nombres_Lettres.get(n[2]+10))
            else:
                T.append(Nombres_Lettres.get(n[2]))
            return(t.join(T))
    dans ce bout de code j'ai fait des test car quand je rentre classe(534) on me donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> classe(534)
    'cinq-cent-treize'
    au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> classe(534)
    'cinq-cent-trente-quatre'
    je voudrais savoir comment faire pour résoudre ce problème

  14. #14
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 689
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 689
    Points : 30 983
    Points
    30 983
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par TheFalqo Voir le message
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            if n[0]==0 or n[0]==1:
                None
            else:
                T.append(Nombres_Lettres.get(n[0]))
    Déjà l'instruction neutre c'est pass et non None (mais c'est bien d'avoir compris qu'il fallait mettre quelque chose et d'avoir essayé ça). Toutefois il y a encore plus simple: if n[0] != 0 and n[0] != 1: T.append(Nombres_Lettres.get(n[0])) ou encore if n[0] not in (0, 1): T.append(Nombres_Lettres.get(n[0])).
    Ben oui, au lieu de faire "si j'ai ceci alors rien sinon cela" autant faire directement "si je n'ai pas ceci alors cela" !!!

    Citation Envoyé par TheFalqo Voir le message
    je voudrais savoir comment faire pour résoudre ce problème
    Comme tous les autres chaque fois qu'un résultat n'est pas bon: du print() de toutes les variables intermédiaires qui amènent à ce résultat avec à chaque valeur affichée une analyse de ta part pour vérifier si la valeur que tu obtiens est bien celle qui était attendue
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  15. #15
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2020
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2020
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    j'ai a peu près compris ce que tu ma dit avec les test du print mais mon erreur se produit ici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if n[1]>6:
                    T.append(Nombres_Lettres.get(10))
                    T.append(Nombres_Lettres.get(n[1]))
                else:
                    T.append(Nombres_Lettres.get(n[1]+10))
    avec le n[1]+10

    et je voudrai par exemple quand n[1]==3 faire que le T.append ajoute 30

    exemple: n=[5,3,4]
    T.append(Nombres_Lettres.get(30) (Je ne sais pas comment obtenir le 30 avec le n[1])
    T.append(Nombres_Lettres.get(n[2])

  16. #16
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 689
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 689
    Points : 30 983
    Points
    30 983
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par TheFalqo Voir le message
    T.append(Nombres_Lettres.get(30) (Je ne sais pas comment obtenir le 30 avec le n[1])
    Peut-être déjà revoir ce que fait la méthode dict.get() et si c'est comme ça qu'on s'en sert...

    Citation Envoyé par TheFalqo Voir le message
    et je voudrai par exemple quand n[1]==3 faire que le T.append ajoute 30
    Il y a une infinité de façons d'obtenir y=30 avec x=3 (exemple y=x+27 ou y=2x+24 ou y=-0.7x² + 36.3 ou ...) mais la solution la plus proportionnelle est de multiplier x par 10: T.append(n[1] * 10)
    Citation Envoyé par TheFalqo Voir le message
    exemple: n=[5,3,4]
    Je ne sais pas comment obtenir le 30 avec le n[1])
    Ben... n[1] * 10...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  17. #17
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2020
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2020
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Merci pour votre aide, mon programme est fonctionnelle. je vous remercie pour toute cette aide que vous m'avez apporter

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Programme VBA pour trouver le nombre de trimestres entre 2 dates
    Par gentilgars dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 21/02/2017, 10h23
  2. Programme pour supprimer les mots contenant la lettre "i"
    Par LerikalBless dans le forum Pascal
    Réponses: 8
    Dernier message: 13/05/2015, 18h40
  3. Quel langage de programmation pour la manipulation de nombre extrêmement grand
    Par Lord - Nelson dans le forum Langages de programmation
    Réponses: 4
    Dernier message: 17/11/2014, 22h27
  4. [XL-2007] Formule pour traduire les nombres en lettre
    Par midou0998 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 10/10/2012, 12h28
  5. Commande pour connaitre le nombre de lettres d'une variable
    Par AZzjeioafh dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 04/12/2009, 07h45

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