Takrorlanuvchi algoritmlarni dasturlash. While operatori 54 dars



Download 211,74 Kb.
bet15/15
Sana01.03.2022
Hajmi211,74 Kb.
#476318
1   ...   7   8   9   10   11   12   13   14   15
Bog'liq
9-sinf dars ishlanma. Dilmonova Fazolat

Davomatni aniqlash

O’tilgan mavzuni takrorlash. “Men qaysi funksiyaman” o’yini


O’quvchilarni qo’liga funksiyalar yozilgan kartochkalar tarqatib chiqiladi. O’qituvchi ta’rifni o’qiydi. O’quvchi shu tarifga mos funksiya kartochkasini ko’taradi va ball yig’adi.
Masalan:1. “x ning n-darajasini hisoblayman. Men qaysi funksiyama?” degandan keyin qaysi o’quvchi pow(x,n) funksiyani ko’tarsa ball yig’adi. O’yin shu tartibda davom ettiriladi. O’quvchilarning to’plagan ballari hisoblanib, rag’batlantiriladi
Yangi mavzuga zamin tayyorlash uchun sinf doskasida sana, mavzu va qiziqtirish uchun savollar yoziladi. O‘quvchilarga savol tashlanadi va “Aqliy hujum” metodi yordamida javoblar tahlil qilinadi.
1. Foydalanuvchining grafik interfeysi nima?
2. Grafik interfeysli ilovalar qanday yaratiladi
Yangi mavzudan oldin o‘quvchilarning shu mavzuga oid bilimlari aniqlab olinadi.
Yangi mavzu bayoni:
Aksariyat dasturlash tillarida foydalanuvchi bilan o‘zaro aloqani o‘rnatish uchun boshqaruv elementlari: oyna, matnlar maydoni va tugmachalar ishlatiladi. Bular umumiy nom bilan foydalanuvchining grafik interfeysi (GUI – graphical user interface) deb ataladi.
Widget (vijet)– GUIga ega ilovani yaratish uchun foydalaniladigan tugmachalar yoki matnli maydonlar kabi interfeys elementlari.
Barcha elementlar joylashadigan oyna GUIning asosi hisoblanadi. Oyna va uning elementlari (vijetlar)ni yaratish uchun Python standart kutubxonasining Tkinter modulidan foydalaniladi. Tkinter – Pythondagi standart grafik kutubxona. Pythonni o‘rnatganda kutubxona dasturning ichida birga taqdim etiladi. Python o‘rnatilishi bilan GUIga ega ajoyib ilovalarni yaratish uchun zarur obyekt va usullardan foydalanish imkoniyati vujudga keladi. GUI ilovalarni yaratish uchun:
• Tkinter modulini import qilish;
• Tkinter asosiy oynasini yaratish;
• ilovaga bir yoki bir necha vijetni qo‘shish;
• foydalanuvchi bajaradigan jarayonlarni tushunadigan va ularga javob qaytaradigan
asosiy siklli kodga kirish lozim.

from tkinter import *
window = Tk()
window.title('My App')
window.geometry('250x50')
window.configure(background='yellow')
my_label=Label(window, width=40,
height=5, bg='yellow', text='')
my_label.grid(row=0, column=0)
def change_text():
my_label.config(text='Hello!')

Kutubxonadan Tkinter odulini yuklab olish.

Tkinter oynasini yaratish.

Tkinter oynasi sarlavhasiga nom berish.

Tkinter oynasining o‘lchami.

Tkinter oynasi fonining rangi.

Label funksiyasi yordamida eni 40,
bo‘yi 5, rangi sariq, bo‘sh matnli
maydon vijeti o‘rnatiladi.

Matnli maydonni katakka
joylashtirish 0-satr va 0-ustun.

Tugmachani bosganda chaqiriluvchi
funksiyani e’lon qilish.

def change_text():
my_label.config(text='Hello!')
my_button=Button(window, text="Press me!", width=10, command=change_text)
my_button.grid(row=1, column=0)
window.mainloop()

Tugmachani bosganda chaqiriluvchi
funksiyani e’lon qilish.

Button funksiyasi yordamida nomi Press me, eni 10 ga teng tugmacha o‘rnatiladi. command= atributi yordamida
tugmacha bosilganda, bajariluvchi
funksiya ko‘rsatiladi.

Tugmachani katakka joylashtirish
1-satr, 0-ustun

Asosiy siklga kirish

Dastur ishga tushganda, ushbu oyna chiqariladi.





Tugmacha bosilganda, bo‘sh matnli
maydonda Hello! yozuvi paydo bo‘ladi.
Mustahkamlash
1.Foydalanuvchi grafik interfeysi (GUI)nima?
2.Vijet nima va u nima maqsadda ishlatiladi?
Mavzu bo‘yicha yakunlovchi xulosalar qilinadi. O‘quvchilar tinglab, o‘z fikrlarini aytadi
Uyga vazifasi — 106-betidagi uy vazifasida berilgan mashqlarni bajarish.
1.Rangi yashil, o‘lchami 100×100 bo‘lgan “Mening birinchi ilovam” nomli GUI oynasini yaratuvchi dastur kodini yozing. Oynada “Salom O‘zbekiston” xabarini chiqaruvchi tugmachasini joylashtiring.
Bajarish
from tkinter import *
window=Tk()
window.title("Mening birinchi ilovam")
window.geometry("100x100")
window.configure(background="green")
my_label=Label(window, width=15, height=5, bg="green", text="") my_label.grid(row=0, column=0)
def change_text():
my_label.config(text="Salom O`zbekiston!") my_button=Button(window,text="Meni bosing!", width=10, command=change_text)
my_button.grid(row=1, column=0)
window.mainloop()


Sana:

Informatika-9. 66 – dars.

Mavzu: Pythonda foydalanuvchi grafik interfeysi bilan ishlash


Darsning maqsadi: a) Ta’limiy: O’quvchilarga foydalanuvchi grafik interfeysi (GUI) ilovalarini yaratishda vijetlardan foydalanishni o’rgatish;
b) Tarbiyaviy: o’quvchilarni fanga bo’lgan qiziqishini oshirish orqali ularni tartib va intizomga o’rgatish
c) Rivojlantiruvchi: o’quvchilarning kompyuterdan foydalanish haqidagi bilim va tasavvurlarini hamda mantiqiy fikrlash darajasini oshirish .
Dars turi: Aralash (nazariy va amaliy).
Dars shakli: Sinfda ishlash, guruhda ishlash, yakka tartibda ishlash.
O‘qitish metodi va texnologiyalari: Aqliy hujum, savol-javob, kichik guruhlarda ishlash, “Loyihalash” metodi
O’qitish vositasi: Elektron resurslar, darslik, plakatlar, tarqatma materiallari
Dars vositasi:kompyuter, proyektor
Tayanch tushunchalar: Grafik interfeys, kutubxona moduli, vijetlar, koordinatalar tizimi
Darsning blok-chizmasi

T.r

Darsning bosqichlari

Vaqt

1

Tashkiliy qism

3 daqiqa

2

O’tilganlarni takrorlash

7 daqiqa

3

Yangi mavzu ustida ishlash

17 daqiqa

4

Yangi mavzuni mustahkamlash

15 daqiqa

5

Uyga vazifa

3 daqiqa

Darsning borishi
Tashkiliy qism

Davomatni aniqlash

Otilgan mavzuni takrorlash


1.Foydalanuvchi grafik interfeysi (GUI)nima?
2.Vijet nima va u nima maqsadda ishlatiladi?
Yangi mavzu bayoni
Dastur ilovalarida foydalaniladigan barcha vijetlar window = Tk() va window.mainloop() buyruqlari orasida kiritiladi. Tkinter modulidagi grid() usuli katakli koordinatalar tizimidan foydalangan holda vijetlarni kerakli koordinataga joylashtirish imkonini beradi.

Vijetlar

Dasturdagi ko‘rinishi

Natijasi




Label()

my_label=Label(window, width=40,
height=5, bg='yellow', text='')
my_label.grid(row=0, column=0)




Matnli maydon

Text

text=Text(window, width=4, height=2)
my_text_box.grid(row=0, column=1)




Natijani chiqarish uchun matnli maydon

Entry()

my_text_box=Entry(window, width=20)
my_text_box.grid(row=0, column=0




Matn kiritiladigan maydon

OptionMenu()

options=(1,2,3)
my_variable_object=IntVar()
my_variable_object.set(‘Tanlang:’)
my_dropdown=OptionMenu(window,
my_variable_object, *options)
my_dropdown.grid()




Tanlanadigan maydon

Radiobutton()

jinsi=StringVar()
radio1=Radiobutton(window, text=’Ayol’, variable=jinsi, value=’ayol’)
radio1.grid(row=3, column=0, sticky=W) radio1.select()
radio2=Radiobutton(window,
text=’Erkak’, variable=jinsi, value=’erkak’) radio2.grid(row=3, column=1, sticky=W) radio2.select()







Checkbutton()

var1=IntVar()
checkbox1=Checkbutton(window, text=’Python’, variable=var1)
checkbox1.grid(row=0, column=0) var2=IntVar()
checkbox2=Checkbutton(window, text=’Java’, variable=var2)
checkbox2.grid(row=1, column=0)







Button()

my_button=Button(window,
text='Kubik ot!', command=kubik) my_button.grid(row=4, column=0)







PhotoImage()

foto=PhotoImage(file='image/foto.png') my_label=Label(window, image=foto)
my_label.grid(row=0, column=0)







O‘quvchilar 3 ta kichik guruhga bo‘linadi. Har bir guruhga quyidagi loyiha topshiriqlari beriladi.


O‘quvchilar kichik guruhlarda loyiha ishini bajaradi. Amalga oshirgan ishlari bo‘yicha har bir guruh o‘z taqdimotini tayyorlaydi. Guruh taqdimoti muhokama qilinadi.

Guruhlar

Loyiha vazifalari

1

Ismi (entry), familiyasi (entry), tug‘ilgan sanasi (entry) va jinsi (Radiobutton) maydonlaridan iborat GUI ilova yaratish. Ushbu ilovada kiritish tugmachasi (Button) mavjud bo‘lib, tugmacha bosilgan vaqtda matnli maydon (Label)ga kiritilgan ma’lumotlarni chiqaruvchi dastur tuzing.

2

Ismi (entry), familiyasi (entry), sinfi (OptionMenu) va fani (Checkbutton) maydonlaridan iborat GUI ilova yaratish. Ushbu ilovada kiritish tugmachasi (Button) mavjud bo‘lib, tugmacha bosilgan vaqtda matnli maydon (Label)ga kiritilgan ma’lumotlarni chiqaruvchi dastur tuzing.

3

Tuman nomi (entry), maktab nomi (entry), rasmi (PhotoImage) maydonlaridan iborat
GUI ilova yaratish. Ushbu ilovada kiritish tugmachasi (Button) mavjud bo‘lib, tugmacha
bosilgan vaqtda matnli maydon (Text)ga kiritilgan ma’lumotlarni chiqaruvchi dastur
tuzing.












O‘quvchilar kichik guruhlarda loyiha ishini bajaradi. Amalga oshirgan ishlari bo‘yicha har bir guruh o‘z taqdimotini tayyorlaydi. Guruh taqdimoti muhokama qilinadi.

Uyga vazifa:


2.Rangi pushti, o‘lchami 250×150 bo‘lgan “Mevalar” nomli GUI oynasini yaratuvchi dastur kodini yozing. Oynada berilgan 4 ta mevadan birini tanlash imkonini beruvchi vijetni joylashtiring.
from tkinter import *
window = Tk()
window.title('mevalar')
window.geometry('250x150')
window.configure(background='magenta')
my_label=Label(window, width=5, height=5, bg='magenta', text='') my_label.grid(row=0, column=0)
jinsi=StringVar()
radio1=Radiobutton(window, text='olma',variable=jinsi, value='olma')
radio1.grid(row=0, column=0, sticky=W)
radio1=Radiobutton(window, text='anor',variable=jinsi, value='anor')
radio1.grid(row=0, column=1, sticky=W)
radio1=Radiobutton(window, text='shaftoli',variable=jinsi, value='shaftoli') radio1.grid(row=0, column=2, sticky=W)
radio1=Radiobutton(window, text='gilos',variable=jinsi, value='gilos')
radio1.grid(row=0, column=3, sticky=W)
Radiobutton()
radio1.select()
window.mainloop()

Sana:

Informatika-9. 67 – dars.

Mavzu: Amaliy mashg’ulot


Darsning maqsadi: a) Ta’limiy: O’quvchilarda Python dasturlash tilida vijetlardan foydalanisho’nikmasini shakllantirish;
b) Tarbiyaviy: o’quvchilarni fanga bo’lgan qiziqishini oshirish orqali ularni tartib va intizomga o’rgatish
c) Rivojlantiruvchi: o’quvchilarning kompyuterdan foydalanish haqidagi bilim va tasavvurlarini hamda mantiqiy fikrlash darajasini oshirish .
Dars turi: Bilim, ko’nikma va malakalarini rivojlantirish
Dars uslubi: Aralash
Dars shakli: Savol-javob. Jamoa va kichik guruhlarda ishlash
Dars vositasi: Elektron resurslar, darslik, plakatlar, tarqatma materiallari
Darsning blok-chizmasi

T.r

Darsning bosqichlari

Vaqt

1

Tashkiliy qism

3 daqiqa

2

O’tilganlarni takrorlash

39 daqiqa

3

Uyga vazifa

3 daqiqa

Darsning borishi
Tashkiliy qism:Davomatni aniqlash

O’tilgan mavzuni takrorlash uchun o’quvchilarning vijetlarning o’zbekcha tarjimasini bilishlarini tekshirish maqsadida tarqatmalar tarqatib aniqlab olamiz. O’quvchilar vijetlarning inglizchasi va o’zbekchasi kesishgan joyiga plus ishora qo’yishadi. Kim ko’p topgan bo’lsa baholanadi. Masalan:


T/R

O’zbekcha

inglizcha



Matn

Nishon, belgi

Kiritish maydoni

Tekshirish tugmasi

Tugma

1

Label


 +




2

Text

 +





3

Entry



 +



4

Button.





 +

5

Checkbutton




 +




Misol. GUIdan foydalanib, 1 dan n gacha bo‘lgan 10 ta tasodifiy sonni chiqaruvchi dastur tuzing. n foydalanuvchi tomonidan kiritiladi





from tkinter import *

Kutubxonadan Tkinter modulini yuklab oladi.

from random import randint

Kutubxonadan random modulining randint funksiyasini yuklab oladi

def tasodifiy():

Funksiyani e’lon qiladi.

number = int(textbox_input.get())

Matn maydoni orqali kiritilgan textbox_input o‘zgaruvchisi qiymatini olib, butun songa aylantiradi.

textbox_output.delete(0.0, END)

Natijani chiqaruvchi maydon, ya’ni textbox_output o‘zgaruvchisining qiymatini o‘chiradi.

for i in range (1,11):

1 dan 11 gacha 10 ta sikl ishlaydi

t_son = str (randint(1, number))

1 dan numbergacha bo‘lgan sonlar orasidan tasodifiy sonni topadi.

textbox_output.insert(END, t_son)

Tasodifiy sonni natija chiqaruvchi maydon, ya’ni textbox_output o‘zgaruvchisiga tenglaydi

window = Tk()

Tkinter oynasini yaratish

window.title('Tasodifiy son')

Tkinter oynasi sarlavhasiga nom beradi.

window.geometry('250x250')

Tkinter oynasi o‘lchamini o‘rnatadi.

window.configure(background='yellow')

Tkinter oynasi fon rangini belgilaydi

input_label = Label (window, text='Son: ', bg='yellow')

Tasodifiy son yuqori chegarasining maydoni nomini ko‘rsatish uchun yorliq yaratadi.

inpu t_label.grid (row=0, column=0)

Matnli maydonni katakka joylashtiradi: 0-satr va 0-ustun.

output_label = Label(window, text =' \nNatija', bg='yellow')

Tasodifiy sonlarni chiqarish maydoni nomini ko‘rsatish uchun yorliq yaratadi.

output_label.grid(row=2, column=0)

Matnli maydonni katakka joylashtiradi: 2-satr va 0-ustun.

textbox_input = Entry (window, width=5)

Tasodifiy sonning yuqori chegarasini kiritish uchun matn maydoni yaratadi.

textbox_input.grid (row=1, column=0)

Matnli maydonni katakka joylashtiradi: 1-satr va 0-ustun.

textbox_output = Text(window, height=10, width=6)

10 ta tasodifiy sonni chiqarish uchun matnli maydonni yaratadi

textbox_output. grid(row=3, column=0)

Matnli maydonni katakka joylashtiradi: 3-satr va 0-ustun.

kubik_button = Button(window,text= 'Tasodifiy son', command=tasodifiy)

“Tasodifiy son” nomli tasodifiy funksiyani chaqiradigan tugmacha yaratiladi

kubik _button grid(row=1,
column=1)

Tugmachani katakka joylashtiradi: 1-satr, 1-ustun.

window.mainloop()

Asosiy siklga kirish







Dastur ishga tushganda, ushbu oyna chiqadi

Tugmacha bosilganda, 1 dan 15 gacha bo’lgan sonlar orasidan tasodifiylarini chiqaradi

Uyga vazifa 108-betdagi masalalarni bajarish




Download 211,74 Kb.

Do'stlaringiz bilan baham:
1   ...   7   8   9   10   11   12   13   14   15




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