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

Tkinter Python Discussion :

Ajouter option conversion binaire/Hexa à ma calculatrice


Sujet :

Tkinter 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
    Mai 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 7
    Par défaut Ajouter option conversion binaire/Hexa à ma calculatrice
    Bonjour à tous !

    J'ai grâce à vous enfin terminé ma calculatrice basique.
    Maintenant, j'aimerais y ajouter un bouton permettant le la conversion binaire et un autre pour l'hexadécimal (la réponse s'affichera dans le même Label que pour les calculs normaux)
    Aprés une paire d'heures de recherche, je ne trouve pas de fonction permettant cela.

    Pour moi, la conversion binaire est "254=11111110" par exemple..
    J'ai trouvé la fonction DECBIN mais je ne comprends pas vraiment comment elle fonctione
    Merci à vous

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    from tkinter import * 
    from math import *
    import tkinter as tk
     
    #importation de la bibliotheque Tkinter et math
     
    def evaluer(*event):
    	chaine.configure(text = "resultat=" + str(eval(entree.get())))
    #_______________________________________________________________
     
    fenetre = Tk()
    fenetre.geometry("400x500") #definis la taille de la fenetre
    fenetre.title ('Calculatrice') #Nom de la fenetre
    #__________
    entree = tk.Entry(fenetre)
    entree.bind("<Return>", evaluer)#fait en sorte qu'un evenement se produit lorsque l'on appuye sur enter
    bouegale = Button(fenetre,text='=',command=evaluer, width =8)
    bouegale.grid(row =7, column =2)
    #__________
    chaine = Label(fenetre)#Modifie l'attribut "texte" lors de l'evenement
     
    entree.grid(row=0, column=1)
    chaine.grid()
     
    def do_action1():
            entree.insert('end',1)
    def do_action2():
            entree.insert('end',2)
    def do_action3():
            entree.insert('end',3)
    def do_action4():
            entree.insert('end',4)
    def do_action5():
            entree.insert('end',5)
    def do_action6():
            entree.insert('end',6)
    def do_action7():
            entree.insert('end',7)
    def do_action8():
            entree.insert('end',8)
    def do_action9():
            entree.insert('end',9)
    def do_action0():
            entree.insert('end',0)
    def do_actionpoint():
            entree.insert('end','.')
     
    def do_actionplus():
            entree.insert('end','+')
    def do_actionmoins():
            entree.insert('end','-')
    def do_actionfois():
            entree.insert('end','*')
    def do_actiondiviser():
            entree.insert('end','/')
     
    bou1 = Button(fenetre, text='1',command=do_action1, width =8)
    bou1.grid(row =4, column =0)
    bou2 = Button(fenetre, text='2',command=do_action2 ,width =8)
    bou2.grid(row =5, column =0)
    bou3 = Button(fenetre, text='3',command=do_action3 , width =8)
    bou3.grid(row =6, column =0)
    bou4 = Button(fenetre, text='4',command=do_action4 , width =8)
    bou4.grid(row =4, column =1)
    bou5 = Button(fenetre, text='5',command=do_action5, width =8)
    bou5.grid(row =5, column =1)
    bou6 = Button(fenetre, text='6',command=do_action6, width =8)
    bou6.grid(row =6, column =1)
    bou7 = Button(fenetre, text='7',command=do_action7, width =8)
    bou7.grid(row =4, column =2)
    bou8 = Button(fenetre, text='8',command=do_action8, width =8)
    bou8.grid(row =5, column =2)
    bou9 = Button(fenetre, text='9',command=do_action9, width =8)
    bou9.grid(row =6, column =2)
    bou0 = Button(fenetre, text='0', width =8)
    bou0.grid(row =7, column =1)
    boupoint = Button(fenetre, text=',',command=do_actionpoint, width =8)
    boupoint.grid(row =7, column =0)
     
     
     
    entree.bind("<Return>" , evaluer)
    bouplus = Button(fenetre, text='+',command=do_actionplus, width =8)
    bouplus.grid(row =4, column =3)
    boumoins = Button(fenetre, text='-',command=do_actionmoins, width =8)
    boumoins.grid(row =5, column =3)
    boufois = Button(fenetre, text='x',command=do_actionfois, width =8)
    boufois.grid(row =6, column =3)
    boudiviser = Button(fenetre, text='/',command=do_actiondiviser, width =8)
    boudiviser.grid(row =7, column =3)
     
     
    #Placement des boutons
    fenetre.mainloop()

  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,

    Vous pouvez essayer d'utiliser les fonctions "bin" et "hex":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> bin(254)
    '0b11111110'
    >>> hex(254)
    '0xfe'
    >>>
    - 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
    Mai 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 7
    Par défaut
    Bonsoir

    Oui mais je ne comprends pas vraiment comment l'intégrer code
    Si je dois le définir ou quelque chose ainsi
    Je comprends pas du tout à vrai dire cette fonction..
    Ma fonction "évaluer" par exemple est compréhensible
    Le "Def" habituel, la configuration de la fonction entre parenthèse
    Et ensuite je peux L'appeler sur un bouton grâce à un "command = évaluer"

  4. #4
    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 Luggy Voir le message
    Oui mais je ne comprends pas vraiment comment l'intégrer code
    Si je dois le définir ou quelque chose ainsi
    Vous avez un code qui fonctionne après avoir transpiré pour le mettre au point.
    Y ajouter une fonctionnalité genre calculer en binaire, hexa ou en décimal ne va pas s'intégrer facilement à l'existant.
    Le soucis est l'ajout d'une fonctionnalité de se fera pas de façon incrémentale sauf à y avoir pensé avant.
    Actuellement votre code ne fait qu'une centaine de lignes ("merci Python"), mettez les dans un coin et réfléchissez à un programme complètement neuf qui sache réaliser ces fonctionnalités là.
    Vous pourriez commencer par ajouter 3 boutons: "bin", "hex", "dec" qui force l'affichage en... et prendre en compte, réaliser ce que çà veut dire.
    C'est un bon exercice.

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

Discussions similaires

  1. conversion binaire hexa
    Par Invité dans le forum C++
    Réponses: 5
    Dernier message: 11/01/2015, 13h23
  2. Conversion binaire -> hexa
    Par dustyg dans le forum Débuter
    Réponses: 1
    Dernier message: 03/06/2009, 12h19
  3. Conversion ascii=> hexa=>binaire
    Par grunk dans le forum C++
    Réponses: 3
    Dernier message: 27/11/2005, 18h45
  4. Conversion binaire -> hexadecimal
    Par barthelv dans le forum C
    Réponses: 2
    Dernier message: 06/08/2003, 10h40
  5. Conversion binaire -> ASCII
    Par will13013 dans le forum C
    Réponses: 8
    Dernier message: 08/01/2003, 04h12

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