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 :

besoin d'aide pour Tp a rendre


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2022
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2022
    Messages : 4
    Par défaut besoin d'aide pour Tp a rendre
    bonjour a tous ,

    j'aurai besoin d'aide pour mon script en python .

    je dois convertir 2 décimal en binaire puis additionner les 2 en binaire ( je dois pas utliser bin() etc

    les 2 parties de manière distincte fonctionne

    mon problème et que j'arrive pas à récupérer le résultat des fonctions nbrtodecimal(nbrx) dans des tableaux respectifs qui sera utiliser pour la 2 ieme partie j'ai essayer nbr1.append() en vain

    je vous remercie infiniment de votre aide d'avance

    [CODE]

  2. #2
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 833
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par wfire Voir le message
    je dois convertir 2 décimal en binaire puis additionner les 2 en binaire ( je dois pas utliser bin() etc
    Explique-moi pourquoi tu crées deux fonctions def nbr1ToBinaire(nbr1) et def nbr2ToBinaire(nbr2) faisant toutes deux exactement la même chose? Si demain tu dois convertir 5000 nombres tu créeras 5000 fonctions? Tu n'as pas compris le principe des paramètres qu'on transmet aux fonctions leur permettant de faire un même travail sur différents éléments ???
    Donc déjà un code ça se réfléchit

    Citation Envoyé par wfire Voir le message
    mon problème et que j'arrive pas à récupérer le résultat des fonctions nbrtodecimal(nbrx) dans des tableaux respectifs qui sera utiliser pour la 2 ieme partie j'ai essayer nbr1.append() en vain
    append() est une méthode de liste donc elle ne s'applique que pour des listes (si nbr1 n'en est pas une ça ne peut pas fonctionner). Toutefois ton code ne montre pas la fonction "nbrtodecimal()". Mais si elle est écrite comme les fonctions nbrToBinaire() c'est à dire sans renvoyer de résultat, tu ne peux donc pas récupérer un résultat qui n'existe pas...
    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]

  3. #3
    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 wfire Voir le message
    mon problème et que j'arrive pas à récupérer le résultat des fonctions nbrtodecimal(nbrx)
    Pour qu'une fonction retourne quelque chose, il faut qu'elle exécute l'instruction return quelquechose...
    Et pour avoir quelque chance d'exécuter cette instruction, il faut l'écrire et ne pas oublier d'appeler la fonction.

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

  4. #4
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par wfire Voir le message
    il y a pas de return etc car à chaque fois j'ai 40 erreur
    On ne supprime pas les erreurs en supprimant l'instruction qui les a causées. Si on écrit une instruction c'est qu'on en a besoin et si cette instruction renvoie des erreurs, alors on regarde le pourquoi et on corrige.
    Ta fonction nbrToBinaire() ne retourne rien, elle ne fait qu'afficher les éléments qu'elle calcule. Tu remplacerais print(nbrToBinaire(nbr1)) par nbrToBinaire(nbr1) ça donnerait le même résultat à l'écran car les valeurs affichées ne le sont pas à cet endroit. Pour t'en assurer, t'as qu'à écrire print("résultat :", nbrToBinaire(nbr1)) et tu verras ce que ça affiche (d'abord le binaire puis "résultat :None")

    Donc travaille ta fonction pour qu'elle retourne la valeur binaire du nombre qu'elle reçoit et tous tes soucis disparaitront par ricochet.
    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]

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2022
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2022
    Messages : 4
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    On ne supprime pas les erreurs en supprimant l'instruction qui les a causées. Si on écrit une instruction c'est qu'on en a besoin et si cette instruction renvoie des erreurs, alors on regarde le pourquoi et on corrige.
    Ta fonction nbrToBinaire() ne retourne rien, elle ne fait qu'afficher les éléments qu'elle calcule. Tu remplacerais print(nbrToBinaire(nbr1)) par nbrToBinaire(nbr1) ça donnerait le même résultat à l'écran car les valeurs affichées ne le sont pas à cet endroit. Pour t'en assurer, t'as qu'à écrire print("résultat :", nbrToBinaire(nbr1)) et tu verras ce que ça affiche (d'abord le binaire puis "résultat :None")

    Donc travaille ta fonction pour qu'elle retourne la valeur binaire du nombre qu'elle reçoit et tous tes soucis disparaitront par ricochet.
    oui je sais je l'ai enlevé à l'instant, et oui elle return rien car comme je l'ai dit malgré des return, if len() <8, append() etc j'ai tj des trucs bizarre donc je ne comprend pas

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par wfire Voir le message
    malgré des return, if len() <8, append() etc j'ai tj des trucs bizarre donc je ne comprend pas
    Nom : alb7-1-400x415.jpg
Affichages : 198
Taille : 62,2 Ko

    Python (comme tous les langages de prog) ce n'est pas une marmite dans laquelle on jette des instructions en vrac en espérant que ça se mélangera comme il faut.
    Créer un algorithme (convertir un décimal en binaire) c'est décomposer le travail en sous-actions de plus en plus simples afin de pouvoir au final avoir des actions tellement simples qu'elles sont alors traduisibles en Python.
    Déjà je me demande bien pourquoi tu as voulu l'écrire en récursif. La récursivité ça demande pas mal d'esprit d'abstraction pour pouvoir se mettre dans l'esprit de chaque sous-appel (ce qu'il reçoit, ce qu'il doit renvoyer et comment ce qu'il renvoie s'intègrera dans le sous-appel précédent).
    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]

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2022
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2022
    Messages : 4
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Pièce jointe 625953
    Python (comme tous les langages de prog) ce n'est pas une marmite dans laquelle on jette des instructions en vrac en espérant que ça se mélangera comme il faut.
    Créer un algorithme (convertir un décimal en binaire) c'est décomposer le travail en sous-actions de plus en plus simples afin de pouvoir au final avoir des actions tellement simples qu'elles sont alors traduisibles en Python.
    Déjà je me demande bien pourquoi tu as voulu l'écrire en récursif. La récursivité ça demande pas mal d'esprit d'abstraction pour pouvoir se mettre dans l'esprit de chaque sous-appel (ce qu'il reçoit, ce qu'il doit renvoyer et comment ce qu'il renvoie s'intègrera dans le sous-appel précédent).
    car c 'est pas moi qui choisie la manière mais le prof j'ai réussi à bien avancé , il me manque une fonction qui dit si len(lst) inférieur à 8 rajouter des 0 à gauche dans ma liste et tout fonctionnera je suis usée heuresement que c'est coef 1. je lache le code pour ceux qui souhaiterai aidé sans critiquer car bon mise à part 2 com constructif le reste c 'est malheuresement que de la critique gratuitos

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

Discussions similaires

  1. besoin d'aide pour une requête
    Par Damien69 dans le forum Langage SQL
    Réponses: 11
    Dernier message: 31/03/2004, 15h38
  2. besoin d'aide pour le composant DBComboBox
    Par jane2002 dans le forum Bases de données
    Réponses: 8
    Dernier message: 28/02/2004, 19h01
  3. [Kylix] besoin d'aide pour installer kylix3
    Par Sph@x dans le forum EDI
    Réponses: 3
    Dernier message: 11/02/2004, 13h53
  4. [TP]besoin d'aide pour commandes inconnues
    Par Upal dans le forum Turbo Pascal
    Réponses: 15
    Dernier message: 03/10/2002, 10h48
  5. Besoin d'aide pour l'I.A. d'un puissance 4
    Par Anonymous dans le forum C
    Réponses: 2
    Dernier message: 25/04/2002, 17h05

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