Social Icons

Wednesday, August 26, 2020

Solution Exercise 202: get greatest common divisor GCD graphically with python tkinter

Exercise202

Create a Tkinter GUI interface, which calculates the greatest common divisor GCD and the least common multiple LCM graphically as shown in the figure below:

Solution



from tkinter import *
from tkinter import ttk

root = Tk ()
root.geometry ("350x170")

# See solution Exercise 65: https://www.my-courses.net/2020/07/solution-exercise-65-greatest-common.html
def gcd ( m , n ):
    d = m
    while ( m%d != 0 or n%d != 0):
        d = d - 1
    return d

# See solution Exercise 66: https://www.my-courses.net/2020/07/solution-exercise-66-least-common.html
def lcm ( m , n ):
    M = m
    while ( M%m != 0 or M%n != 0 ):
        M = M + 1
    return M

def action (event):
    # we get the selected value from the combobox list
    select = comboList.get ()
    
    # retrieve the value of m from the entry input field
    m = int (entry_m.get ())
    # retrieve the value of n from the entry input field
    n = int (entry_n.get ())
    
    if (select == "GCD"):
        lblResult ['text'] = " GCD(m , n)  = " + str (gcd (m, n))
    else:
        lblResult ['text'] = " LCM(m , n)  = " + str (lcm (m, n))
        
# Creation of the label and input field for the integer m
lbl_m = Label (root, text = "Enter value of m:")
entry_m = Entry (root)
lbl_m.place (x = 10, y = 20)
entry_m.place (x = 150, y = 20)

# Creation of the label and input field for the integer n
lbl_n = Label (root, text = "Enter value of n:")
lbl_n.place (x = 10, y = 50)
entry_n = Entry (root)
entry_n.place (x = 150, y = 50)

lblChoose = Label (root, text = "Choose function:")
lblChoose.place (x = 10, y = 80)

# Creation of the combobox list to select GCD or LCM
comboList = ttk.Combobox(root , values = ["GCD" , "LCM"])
comboList.place (x = 150, y = 80, width = 165)
comboList.bind ("<<ComboboxSelected>>", action)

# Create a label that displays the result
lblResult = Label (root, text = "Result:")
lblResult.place (x = 150, y = 110)

root.mainloop ()




Younes Derfoufi
my-courses.net

No comments:

Post a Comment

Category Of Mobile Courses

Actualités (644) Adsense (1) Affiliation (1) Algebraic Topology (1) Algorithmic (1) all-news (30) Android (5) Android App (8) Android app without code (4) Android Apps (169) Android Development (4) Android download (2) Android OS (3) AngularJS (1) Automata theory and formal language (5) C programming (5) Category and Functor (8) CMS (3) Computer Glossary (18) Create Mobile App With Ionic Framework (2) CSS (2) CSS-Cascading-Style-Sheets (4) Developpement Java (13) Differential Geometry (1) Django-Python-Framework (8) dropshiping (26) Earn Money by Internet (4) Emplois (23) Framework php (2) Fraud (2) HTML (7) Java For Beginners (10) Javascript (12) Kotlin Programming Language (8) Kotlin For Mobile Android (1) Linux Download (2) Marketing (5) Mobile (3) Mobile Courses (4) Mobile Marketing (4) MoneyGram (1) News (721) Node.js (5) Open Source (1) Photoshop (1) Protect Computer (1) Python (33) Python BeautifulSoup (1) Python For Data Science (2) Python-Books (6) Python-DVD-Training (1) Python-Exercises (140) Python-Framework (1) Python-IDE (1) Python-Modules (1) Python-pdf (2) Python-pyQt (1) Référencement (2) Script PHP (2) Security (6) SEO (1) Snipping Tool: Faq (1) Social Networks (1) Source Code (1) Statistics With SPSS (2) Surveillance Software (1) Travail à domicile (6) Tutoriels php en vidéos (2) Tutoriels-MySql (6) tutoriels-php (19) Utilitaires (1) VPS (1) Web Hosting (1) Webcam (1) Webmarketing (11) Western Union (1) Windows 10 (1) Windows 7 (4) Windows 7 Faq (2) Windows 8 (1) Windows Accessories (1) Windows Download (8) Windows Drivers (1) Windows Fonts (1) Windows Power Shell (2) Windows Registry (2) Windows Security (18) Windows Software (2) Windows Spyware (2) Windows utilities (3) Windows Virus (2) Windows Vista (3) Windows Wireless (1) Windows xp (1) Wordpress (1)
 

Sample text

Sample Text

 
Blogger Templates