# 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()
Do'stlaringiz bilan baham: |