# 108 - bet
# Amaliy mashg'ulot
# 6 - masala
# tkinterga tegishli barcha kutubxona a'zolarini import qilamiz:
from tkinter import *
from math import lcm # EKUK ni topish uchun mathni ichidagi tayyor lcm() metodini chaqiramiz:
# kiritilgan sonlarni EKUK ini topish funksiyasi
def EKUK():
a = son1.get() # birinchi kiritilgan sonni olish
b = son2.get() # ikkinchi kiritilgan sonni olish
# agar sonlardan birortasi kiritilmagan bo'lsa natija maydoniga
# "ikkita son kiriting!" so'zini chiqaramiz:
if a == "" or b == "":
myText.set("ikkita son kiriting!")
else:
# agar ikkala son ham kiritilgan bo'lsa u holda ularni
# intlarga o'tkazib lcm() metodi orqali EKUK ini olib natija maydoniga beramiz:
res = lcm(int(a), int(b))
myText.set(res)
# yangi oyna hosil qilamiz:
window = Tk()
# oynaga o'lcham beramiz:
window.geometry("350x250")
# natija uchun string o'zgaruvchi e'lon qilamiz:
myText=StringVar()
# birinchi sonni kiritishni bildirish uchun label va uni 0 - satrga joylaymiz:
Label(window, text="a =").grid(row=0, sticky=W)
# ikkinchi sonni kiritishni bildirish uchun label va uni 1 - satrga joylaymiz::
Label(window, text="b =").grid(row=1, sticky=W)
# natijani bildirib turish uchun label va uni 3 - satrga joylaymiz:
Label(window, text="EKUK(a, b) =").grid(row=3, sticky=W)
# natijani chiqarish uchun label uni rangi ko'k bo'ladi: u ham 3 - satr da bo'ladi:
result=Label(window, text="", textvariable=myText, fg="blue").grid(row=3,column=1, sticky=W)
# birinchi sonni kiritish uchun maydon:
son1 = Entry(window)
# ikkinchi sonni kiritish uchun maydon:
son2 = Entry(window)
# maydonlarni joylaymiz:
son1.grid(row=0, column=1)
son2.grid(row=1, column=1)
# EKUK funksiyasini ishga tushirish uchun tugma:
# uni foniga "aqua" rangini beramiz:
b = Button(window, text="EKUK ni hisoblash", command=EKUK, background='aqua')
# button ekranga joylaymiz:
b.grid(row=0, column=2,columnspan=2, rowspan=2,sticky=W+E+N+S, padx=5, pady=5)
# oyna yopilib qilmasligi uchun uni ushlab turamiz:
mainloop()
# Amaliy mashg'ulot
# 6 - masala
# tkinterga tegishli barcha kutubxona a'zolarini import qilamiz:
from tkinter import *
from math import lcm # EKUK ni topish uchun mathni ichidagi tayyor lcm() metodini chaqiramiz:
# kiritilgan sonlarni EKUK ini topish funksiyasi
def EKUK():
a = son1.get() # birinchi kiritilgan sonni olish
b = son2.get() # ikkinchi kiritilgan sonni olish
# agar sonlardan birortasi kiritilmagan bo'lsa natija maydoniga
# "ikkita son kiriting!" so'zini chiqaramiz:
if a == "" or b == "":
myText.set("ikkita son kiriting!")
else:
# agar ikkala son ham kiritilgan bo'lsa u holda ularni
# intlarga o'tkazib lcm() metodi orqali EKUK ini olib natija maydoniga beramiz:
res = lcm(int(a), int(b))
myText.set(res)
# yangi oyna hosil qilamiz:
window = Tk()
# oynaga o'lcham beramiz:
window.geometry("350x250")
# natija uchun string o'zgaruvchi e'lon qilamiz:
myText=StringVar()
# birinchi sonni kiritishni bildirish uchun label va uni 0 - satrga joylaymiz:
Label(window, text="a =").grid(row=0, sticky=W)
# ikkinchi sonni kiritishni bildirish uchun label va uni 1 - satrga joylaymiz::
Label(window, text="b =").grid(row=1, sticky=W)
# natijani bildirib turish uchun label va uni 3 - satrga joylaymiz:
Label(window, text="EKUK(a, b) =").grid(row=3, sticky=W)
# natijani chiqarish uchun label uni rangi ko'k bo'ladi: u ham 3 - satr da bo'ladi:
result=Label(window, text="", textvariable=myText, fg="blue").grid(row=3,column=1, sticky=W)
# birinchi sonni kiritish uchun maydon:
son1 = Entry(window)
# ikkinchi sonni kiritish uchun maydon:
son2 = Entry(window)
# maydonlarni joylaymiz:
son1.grid(row=0, column=1)
son2.grid(row=1, column=1)
# EKUK funksiyasini ishga tushirish uchun tugma:
# uni foniga "aqua" rangini beramiz:
b = Button(window, text="EKUK ni hisoblash", command=EKUK, background='aqua')
# button ekranga joylaymiz:
b.grid(row=0, column=2,columnspan=2, rowspan=2,sticky=W+E+N+S, padx=5, pady=5)
# oyna yopilib qilmasligi uchun uni ushlab turamiz:
mainloop()