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 :

tkinter exercice suivant


Sujet :

Python

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2014
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2014
    Messages : 35
    Par défaut tkinter exercice suivant
    Bonjour à tous,

    Je suis débutant en Python et cherche à proposer à mes élèves de 4° un exercice sur le théorème de Pythagore.
    J'arrive à obtenir de nouveaux énoncés dans la même fenêtre mais, les solutions ne correspondent pas aux énoncés.
    Voici le code de l'exercice :
    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
    95
    96
    97
    98
    99
    100
    101
     
    from tkinter import *
    import random
    import math as sqrt
    import time
    from tkinter.messagebox import *
     
     
     
    def pythagore_angle_droit():
        canvas.delete(ALL)       
        a = random.randint(1,20) # modification 2
        c = random.randint(1,20) # modification 2
        if a < c :
            a,c=c,a
        else:
            a,c=a,c
     
        ligne1 = canvas.create_line(25, 200, 25, 50,fill='blue')   
        ligne2 = canvas.create_line(25, 50, 300, 200,fill='red')
        ligne3 = canvas.create_line(25,200,300,200,fill='green')
        ligne4 = canvas.create_line(25, 185, 40, 185)# angle droit
        ligne5 = canvas.create_line(40,200,40,185) # angle droit
     
        txt = canvas.create_text(15, 210, text="A", font="Arial 18 ")
        txt = canvas.create_text(310, 205, text="B", font="Arial 18")
        txt = canvas.create_text(20, 40, text="C", font="Arial 18")
     
        txt= canvas.create_text(500,50,text="ABC est un triangle rectangle en A. Calculer la valeur de la longueur d'un des cotés de l'angle droit",font="Arial 18", fill="black")
     
        canvas.create_text(380,250,text="On donne",font="Arial 18")
        canvas.create_text(450,250,text= "BC =",font="Arial 18 ",fill="red")
        canvas.create_text(490,250,text=a,font="Arial 18", fill="red")
        canvas.create_text(530,250,text=" AB =",font="Arial 18", fill="blue")
        canvas.create_text(570,250,text=c, font="Arial 18", fill="blue")
        canvas.create_text(670,250,text="Calculer la valeur de",font="Arial 18 ")
        canvas.create_text(770,250,text=" AC",font="Arial 18", fill="green")
     
    def pythagore_angle_droit_reponse():
     #   canvas.delete(ALL)
     
        a = random.randint(1,20) # modification 2
        c = random.randint(1,20) # modification 2
        if a < c :
            a,c=c,a
        else:
            a,c=a,c
     
        canvas.create_text(400,300,text="ABC est un triangle rectangle en A, on a donc l'égalité de Pythagore :",font='Arial 20')
        txt = canvas.create_text(170, 350, text="BC**2",fill='red',font="Arial 20")
        txt = canvas.create_text(220, 350, text= "=",font="Arial 20")
        txt = canvas.create_text(260, 350, text="AB**2",fill='green',font="Arial 20")
        txt = canvas.create_text(300, 350, text="+",font="Arial 20")
        txt = canvas.create_text(350, 350, text='AC**2',fill='blue' , font="Arial 20")
        txt = canvas.create_text(420, 350, text="soit,",font="Arial 20")
     
        txt = canvas.create_text(170, 375, text='AC**2',fill = 'blue',font='Arial 20')
        txt = canvas.create_text(220, 375, text= "=",font="Arial 20")
        txt = canvas.create_text(260, 375, text="BC**2",fill='red',font="Arial 20")
        txt = canvas.create_text(300, 375, text= "-",font="Arial 20")
        txt = canvas.create_text(350, 375, text="AB**2",fill='green',font="Arial 20")
     
        txt = canvas.create_text(170, 400, text="AC**2",fill='blue',font="Arial 20")
        txt = canvas.create_text(220, 400, text= "=",font="Arial 20")
        txt = canvas.create_text(240, 400, text=a, fill='red',font="Arial 20")
        txt = canvas.create_text(265, 400, text="**2", fill='red',font="Arial 20")
        txt = canvas.create_text(300, 400, text="-",font="Arial 20")
        txt = canvas.create_text(320, 400, text=c,font="Arial 20",fill='green')
        txt = canvas.create_text(350, 400, text="**2", fill='green',font="Arial 20")
     
        txt = canvas.create_text(170, 425, text="AC**2",fill='blue',font="Arial 20")
        txt = canvas.create_text(220, 425, text= "=",font="Arial 20")  
        txt = canvas.create_text(265, 425, text= a**2,fill='red',font="Arial 20")
        txt = canvas.create_text(300, 425, text="-",font="Arial 20")
        txt = canvas.create_text(340, 425, text= c**2,fill='green',font="Arial 20")  
     
        txt = canvas.create_text(160, 450, text= "AC ",fill='blue',font="Arial 20")
        txt = canvas.create_text(220, 450, text= "= ",font="Arial 20") 
        txt = canvas.create_text(260, 450, text= "sqrt (" ,font="Arial 20")  
        txt = canvas.create_text(310, 450, text= a**2-c**2,font="Arial 20")  
        txt = canvas.create_text(350, 450, text= ")",font="Arial 20") 
     
        txt = canvas.create_text(320, 475, text = "Une valeur approchée au centième est : ",font='Arial 20')
     
    ############################################################################################################################## 
    #################################################    Programme principal : #####################################################
     ##############################################################################################################################   
     
    fenetre = Tk()
    canvas = Canvas(fenetre, width =1000, height =500, bg ='ivory')
    canvas.pack(side =TOP, padx =50, pady =25)
     
    bouton1 = Button(fenetre, text ='Enoncé', font='Arial 20',command =pythagore_angle_droit)
    bouton1.pack(side =LEFT, padx =10, pady =10)
    bouton2 = Button(fenetre, text ='Réponse',font='Arial 20', command = pythagore_angle_droit_reponse)
    bouton2.pack(side =RIGHT, padx =10, pady =10)
     
     
     
     
    fenetre.mainloop()
    Si j'enlève, dans la réponse,
    a = random.randint(1,20)
    c = random.randint(1,20)
    j'obtiens toujours la même solution, quel que soit l'énoncé.

    Je vous remercie pour votre aide, même partielle.
    Pierre
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 7
    Dernier message: 07/03/2017, 09h46
  2. nouvel exercice personne suivante
    Par flyman29600 dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 27/10/2016, 08h49
  3. [Python 3.X] Solution exercice 8.21 Tkinter méthode Swinnen et question
    Par papyfouette dans le forum Général Python
    Réponses: 3
    Dernier message: 15/04/2015, 22h09
  4. [Cours Swinnen][Tkinter] bloqué à un exercice
    Par babar89 dans le forum Tkinter
    Réponses: 4
    Dernier message: 18/10/2005, 16h48
  5. Pouvez vous m'aider a resoudres ces 3 exercices
    Par algorithmique dans le forum Algorithmes et structures de données
    Réponses: 11
    Dernier message: 09/08/2002, 17h26

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