# Uyga vazifa # 2 masala



Download 13,47 Kb.
Sana23.07.2022
Hajmi13,47 Kb.
#843654
Bog'liq
Hujjat


# 106 - bet
# Uyga vazifa
# 2 - masala

# tkinter modulini tk sifatida import qilamiz:


import tkinter as tk

# yangi window nomli oyna:


window = tk.Tk()
# endi oynaga sarlavha beramiz:
window.title("Mevalar")
# oynaga o'lcham beramiz:
window.geometry("250x150")
# tanlanadigan mevalar "tuple" sini yaratamiz.
# Tuple - bu tarkibi o'zgarmas ro'yhat:
options=("Olma", "Anor", "Gilos", "Shaftoli")
# bu biz tanlagan string o'zgaruvchi:
tanlaganim= tk.StringVar()
# tanlagan o'zgaruvchimizga qiymat berish:
tanlaganim.set("Tanlang:")
# pastdan chiqib turuvchi menyuni yaratamiz yani u DROPDOWN deyiladi:
my_dropdown=tk.OptionMenu(window,tanlaganim, *options)
# dropdown menuyimizni ekranga joylaymiz:
my_dropdown.grid()

# oynani ko'rishimiz uchun uchun yopilib


# qolmasligi uchun ushlab turamiz
window.mainloop()

# 108 - bet


# Amaliy mashg'ulot
# 5 - masala

# tkinterga tegishli barcha kutubxona a'zolarini import qilamiz:


from tkinter import *
from math import gcd # EKUB ni topish uchun mathni ichidagi tayyor gcd() metodini chaqiramiz:
# kiritilgan sonlarni Ekubini topish funksiyasi
def EKUB():
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 math.gcd() metodi orqali EKUB ini olib natija maydoniga beramiz:
res = gcd(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="EKUB(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)
# EKUB funksiyasini ishga tushirish uchun tugma:
# uni foniga "aqua" rangini beramiz:
b = Button(window, text="EKUB ni hisoblash", command=EKUB, 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()

# 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()
Download 13,47 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish