Dasturga Muqaddima 1-bosqich



Download 5,68 Mb.
bet18/36
Sana11.01.2022
Hajmi5,68 Mb.
#344056
1   ...   14   15   16   17   18   19   20   21   ...   36
Bog'liq
metodichka FS

13-qism


1-savol

Quyidagi kodda qaysi o‘zgaruvchilar lokal, qaysilari global bo‘ladi?



import turtle
# Turtle raqsi qanchalik tez bo‘ladi?

intensity = 10
def bounce(something):

dance = [-1, 1, -1, 1, -1, 1]

for step in dance:

something.forward(step * intensity)
def boogie():

wiggler = turtle.Turtle()

bounce(wiggler)

wiggler.right(90)

bounce(wiggler)
boogie()



Izoh: Ushbu dance o‘zgaruvchisi bounce funksiyasi uchun lokal, wiggler o‘zgaruvchisi esa boogie funksiyasi uchun lokaldir. O‘zgaruvchi intensity globaldir.

2-savol

Tasavvur qiling, ushbu kodni yuqoridagi dastur oxiriga qo‘shdingiz:



doodler = turtle.Turtle()

doodler.forward(step)

Bu ish beradimi yoki xato bo‘ladimi?





Izoh: step o‘zgaruvchisi bounce funksiyasi ichidagi for sikli bilan aniqlanadi. Shunday qilib, u lokal miqyosga ega va unga ushbu funksiya tashqarisidan kirish mumkin emas.

14-qism


1-savol

import turtle
def draw_square():

jack = turtle.Turtle()

jack.color("yellow")

for side in range(4):

jack.forward(100)

jack.right(90)
draw_square()

jack.penup()

jack.back(100)

Yuqoridagi kodni ishlatsam nima bo‘ladi?



Izoh: Tayinlash ifodasi jack = turtle.Turtle() funksiyasi ichida, shuning uchun jack bu lokal o‘zgaruvchi. Bu funksiyadan tashqarida aniqlanmagan degan ma’noni anglatadi, shuning uchun Python jack.penup()ni ishlatishga harakat qilganda, jack nimani anglatishini bilmaydi.

2-savol

Kodni tuzatishga urinish. E’tibor bering, 'jack`-ni aniqlaydigan chiziq funksiyaning tashqi tomoniga o‘tkazildi.



import turtle

jack = turtle.Turtle()

jack.color("yellow")
def draw_square():

for side in range(4):

jack.forward(100)

jack.right(90)
draw_square()

jack.penup()

jack.back(100)

Bu ish beradimi yoki u hanuzgacha xatoga olib keladimi?





Izoh: Hozirda 'jack` global o‘zgaruvchidir, shuning uchun kodning hamma joyida aniqlanadi.

3-savol

Kodni tuzatish uchun yana bir (boshqa) urinish:



import turtle
def draw_square():

jack = turtle.Turtle()

jack.color("yellow")

for side in range(4):

jack.forward(100)

jack.right(90)

jack.penup()

jack.back(100)
draw_square()

Bu ish beradimi yoki u hanuzgacha xatoga olib keladimi?





Izoh: jack - bu lokal o‘zgaruvchi, ammo 'jack`ga tegishli bo‘lgan satrlar hammasi funksiya ichida, shuning uchun bu juda yaxshi ishlaydi.

16-qism


1-savol'>1-savol__Ushbu_shartli_ifodalar_ma’noga_ega_bo‘ladigan_qilib_moslashtiring.____2-savol'>1-savol

Ushbu shartli ifodalar ma’noga ega bo‘ladigan qilib moslashtiring.



2-savol

Bu kod ishga tushirilganda, becky qanday rangda chizadi?



squids = 17

becky = turtle.Turtle()

becky.color("red")

if squids == 42:

becky.color("blue")

becky.width(5)


Izoh: squids o‘zgaruvchi qiymati 17. Bu 42 ga teng emas, demak becky.color("blue") ifodasi bajarilmaydi.

17-qism


1-savol

Ikkita kod parchalari. Ular bir xil vazifani bajarishadimi?



if code == "clever":

dance()

else:

sigh()

sigh()

if code == "clever":

dance()


Izoh: Ular har xil narsalarni qilishadi. Agar codening qiymati "clever" bo‘lsa, unda kodning birinchi qismi faqatgina dance(), ikkinchi kod parchasi esa sigh() va keyin dance().

18-qism


1-savol

7 : 3 nechaga teng?

(Bu o‘zingizga savol berishga yordam berishi mumkin: "3 dan 7 gacha necha marta?" Yoki "3 guruhning 7 tasida nechta guruh bor va qancha qismi qolgan?").





Izoh: 7 soni 3 + 3 + 1 yig‘indiga teng. Demak 7 soni 2 ta 3 va 1 qoldiqqa teng (1 "remainder" - qoldiq deb ataladi ).

3-savol'>2-savol__Har_safar_uch_chizilganda_deyarli_hamma_narsa_o‘zgarmaydi,_bitta_narsa_o‘zgaradi_xolos._Nima_o‘zgaradi___Izoh'>2-savol

Keling, modulli bo‘lish amali bilan biroz mashq qilaylik. Ushbu amallarning har biri nimani beradi?



3-savol

Yana misol. Ushbu operatsiyalarning har biri nimani beradi?



4-savol

Modul operatori bilan odatiy narsa bu raqamlarni oshib boruvchi ketma-ketlik bilan ishlatishdir. Masalan, biz 1% 5, keyin 2% 5, keyin 3% 5 va boshqalarni bajarishimiz mumkin.

Buni o‘zingiz uchun ko‘rishga yordam beradi. Shunday qilib, bu yerda o‘sib boradigan ketma-ketlik. Agar har bir modul operatsiyasini natijasi bilan taqqoslasangiz, ko‘ring:





5-savol

Moduldan foydalanishda raqamlarning ketma-ketligi bilan yana bir misol. Ularning har biri uchun qanday natijaga erishasiz?



6-savol

Yuqoridagi jadvalga qarang, qaysi x x % 2 ga to‘g‘ri keladi?



7-savol

Ushbu ifodalarning qaysi biri x % 3 ga to‘g‘ri keladi?



Izoh: Har qanday y soni uchun x % y qiymati har doim y dan kam bo‘ladi.

8-savol

Modul ishlashi soatning qo‘liga o‘xshaydi. Daqiqa qo‘li 0 dan boshlanadi va 59 gacha, keyin keyingi soat boshida 0 ga qaytadi. Shunga o‘xshash:

0, 1, 2, 3 . . . 57, 58, 59, 0, 1, 2, 3 . . . 57, 58, 59, 0, 1, 2, 3 . . .

Ushbu namuna uchun Pythonning qanday ifodasidan foydalanishimiz mumkin?





Izoh: x oshgan sari x % 60 0 dan 59 gacha hisoblanadi. Ammo x 60 ga yetganida, bizda 60 % 60 bo‘ladi, bu esa 0 ning qolgan qismi. Shunday qilib, narsalar tiklanadi va biz 0 dan boshlaymiz, xuddi soatning qo‘lidagi kabi!


3-dars

1-qism


1-savol

Quyida kod berilgan:



t.color("green")

Ushbu kod qismlaridan qaysilari aynan bir xil natijaga ega bo‘lar edi?





Izoh: 3-holatda return bayonoti tushirib qoldirilgan.

2-savol

Ushbu kod nima qiladi?



import turtle
def square(number):

return number * number
marissa = turtle.Turtle()

distance = square(8)

marissa.forward(distance)


2-qism


1-savol

Sizningcha, bu funksiya nima qaytaradi?



def mystery():

for word in ["love", "peace", "kittens"]:

return word

return "doom"



Izoh: funksiya ro‘yxatdagi birinchi elementni qaytaradi. Ikkinchi return bayonoti hech qachon ishga tushmaydi.

Topshiriq:

Kodni qizil, yashil va ko‘k marjon chizadigan qilib o‘zgartiring


3-qism


1-savol

Va yana bir funksiyani chaqiruvi:



star("blue", 7, 50, 45, 100)

U nima qiladi?

Bu chaqiruvda argumentlar juda ko‘p, shuning uchun ular qilayotgan ishlar bilan tanishish uchun ozgina tajriba o‘tkazishga to‘g‘ri keladi.



2-savol

Har safar uch chizilganda deyarli hamma narsa o‘zgarmaydi, bitta narsa o‘zgaradi xolos. Nima o‘zgaradi?

Izoh: har bir siklda ro‘yxat bo‘yicha burchak qiymati belgilanadi va mos ravishda galileo.left(angle) bayonotida har xil burchakka burilish bajariladi.




4-qism


1-savol

Boshlanishidagi kabi, biz ushbu shaklni aylana ichidan polygon funksiyasini qayta-qayta chaqirish orqali chizishimiz mumkin(va argumentlardan biri sifatida aylana elementiga o‘tkazish).

Har safar funksiyaga murojaat qilganimizda, hamma narsa o‘zgarishsiz qoladi... faqat bir narsadan tashqari. Qaysi o‘zgarish?



5-qism


1-savol

Uch o‘quvchi Fizz Buzz o‘ynashga harakat qilishmoqchi. Qaysi biri to‘g‘ri qiladi?



Izoh: Carla 3 ning har bir ko‘paytmasi uchun "fizz", 5 ning har bir ko‘paytmasi uchun "buzz", va 15 uchun "fizzbuzz" dedi.

2-savol

Bu yerda bir nechta raqamlar. Ularni Fizz Buzz qoidasiga ko‘ra moslashtiring!



3-savol

Fizz Buzz kodini yozish uchun biz sonlarning 3 yoki 5 ga qoldiqsiz bo‘lina olishini aniqlash yo‘llariga muhtojmiz. Bu qanday qilib amalga oshiramiz?

Bu usul % modulo operatorini qo‘llashdir. Qanday ishlashini ko‘rish uchun yuqoridagi mashqdagi bir xil raqamlarni olamiz va ularda % 3ni amalga oshiramiz. Qanday natijalarni olarkanmiz?



4-savol

Bu yerda bir nechta chalg‘ituvchilari!

Tasavvur qiling biz xni 15ga teng dedik ( 3 _va_ 5ga qoldiqsiz bo‘linadigan).

Ushbu kodlarning har biri uchun nima sodir bo‘ladi?




6-qism


1-savol

Mening bord o‘yinimda Monopoly yoki Settlers of Catan kabi, o‘yinchilar ikki olti qirrali kubda aylanishadi va qiymatlarni birgalikda qo‘shishadi. Buni amalga Python ning qaysi iboralarini ishlatish kerak?



2-savol

Sizning do‘stingiz random.randint funksiyasini ishlatishga harakat qilib ko‘rdi, ammo xatoga yo‘l qo‘ydi:



NameError

Line:12

Error: 'random' nomi aniqlanmagan

Eng yaqin izoh qanday bo‘ladi?





3-savol

Bu do‘stingiz yozgan kod:



import turtle
t = turtle.Turtle
import random
t.forward(randint(100, 200))

Uni ishga tushirganda, xatolik ro‘y berdi:



NameError

Line: 7

Error: 'randint' nomi aniqlanmagan

Muammo nimada, nima deb o‘ylaysiz?





Izoh: Agar biz randint ni kodga joylashtirsak, Python uni nimaligini bilmaydi. Biz Python ga tasodifiymoduldagi funksiyaga murojaat qilmoqchiligimizni bildirish uchunrandom.randint`ni ishlatamiz.

Bu Turtle() o‘rniga turtle.Turtle() deb yozishimiz sababi bilan bir xil.


7-qism


1-savol

Quyida taqqoslash operatorlarini ishlatuvchi bir nechta turli if bayonotlari. Bazi hollarda, if bayonoti ichidagi kod ishlaydi; boshqalarida esa ishlamaydi. Nima uchu shunday?



Izoh: 10>10 hech qachon ishlamaydi, chunki 10=10. 4 esa 0 dan kichik bo‘lmaydi.

2-savol

Bular haqida qanday?



Izoh: 4 teng emas 5 ga, 4 !=4 ham hech qachon rost bo‘maydi.

9-qism


1-savol

Bu kod ishga tushgach, t.xcor()ning qiymati nima bo‘ladi?



t = turtle.Turtle()

t.forward(40)

t.right(90)

t.forward(30)



Izoh: dastlab t 40 piksel oldinga siljiydi (t.xco90 qiymati 40 bo‘ladi), biroq t.right(90) ishga tushgach t faqat y o‘q bo‘yicha yuradi, demak t.xcor() qiymati 40 bo‘ladi.

2-savol

Agar turtle kanvas 400 ga 400 piksel o‘lchamda bo‘lsa, va markazi koordinatlari 0 ga teng bo‘lsa, unda qaysi bir bayonot to‘g‘ri?



Izoh: 400 ning yarmi 200, demak kanvas -200 dan 200 gacha boradi (uzunlik va kenglikda). Kanvas o‘lchami ikkala koordinata bo‘yicha shunda 200 + 200 = 400 bo‘ladi.

3-savol

Qaysi bir taqqoslash turtleni kanvasning chap chegarasiga tomon ketishini tekshiradi?



Izoh: Agar turtlening xcor qiymati -200 dan kichik bo‘lsa, unda u ekranning chap tomoniga ketib qoladi.

4-savol

Qaysi bir taqqoslash turtlening kanvas chegarasining o‘ng yoki chapiga ketishini tekshiradi?




Download 5,68 Mb.

Do'stlaringiz bilan baham:
1   ...   14   15   16   17   18   19   20   21   ...   36




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