TAKRORLANSIN 11 MARTA
bo‘ya TAMo‘ngga bo‘yaOM
T TAMOMhurchakning gorizontal yo'lagi 12 ta katakdan
o‘g‘ri to'rt
iboratligiga e'tibor bering, shuning uchun Robot o‘ngga 11 marta surilishi kerak. Lekin bo‘yalishi kerak bo'lgan kataklar 12 ta. Shuning uchun protseduraga siklga kirmagan yana bitta bo‘ya ko'rsatmasini qo'shdik.
yo Endi: soddagina bo'lgan orqaga qayt protsedurasini
zamiz
PROT orqaga qayt BOSHLANISH
TAKRORLANSIN 11 MARTA
chapga TAMTAMOM
OM
durYuqoridagilarga asosan yo‘Iakni bo‘ya va orqaga qayt protse-
asini tuzamiz:
PROT yo‘lakni bo‘ya va orqaga qayt BOSHLANISH
yo‘lakni bo‘ya TAMorqaga qayt
OM
Endi to‘liq algoritmni yoza olamiz va u quyidagicha:
yoMakni bo‘ya va orqaga qayt TAKRORLANSIN 5 MARTA
TAMyo‘lakni bo‘ya va orqaga qayt
OM
6.8-mashq
Quyidagi algoritmni yozish nima uchun xato boMardi?
TAKRORLANSIN 6 MARTA
TAMyoMakni bo‘ya va orqaga qayt
YoMlanOMRobot maydonida yo‘lakni bo‘ya va orqaga qayt
ma.
protseduralari bajarilgach, nima boMishini ko‘rish uchun rasm chizishni tavsiya etamiz.
109
«Robot maydonida nima bo'lishini ko‘rish» savolida ikkita savolni ko‘rish kerak:
• Robot qayerda joylashgan bo‘ladi?
• Qaysi kataklar bo‘yaladi?
6.9-mashq
Robot maydon kataklarini boshqacha tartibda aylanib chiqadigan algoritm tuzing.
6.24-masala
Robot quyidagi algoritmni bajarganda harakat qiladigan yo'lini katak varaqqa chizing:
TAKRORLANSIN 5 MARTA
yuqoriga yuqoriga yuqoriga o‘ngga
o‘ngga o‘ngga quyiga quyiga chapga yuqoriga chapga quyiga quyiga quyiga
o‘ngga
o‘ngga o‘ngga
JaTAMOMot yuradigan yo‘l 6.27-rasmda ko‘rsatilgan.
vob. Rob
11- |T1 Tr •1 tr Tr 1 r1 - i!
• .
1 r L \T T Tl' Tn _r 1 Tr Tn T1 T Tr _T| I |1—IL •i i! T 1: T 1 T 1 T L J 1l J l-
L - . T - . » • — — t
1
6 .2 7 - r a sm .
110
ya Qadimgi yunonlar 6.27-rasmda tasvirlangan naqshni juda xshi ko'rishardi. LJIar bu naqshdan binolarni, vazalarni, kiyim-
larni va boshqa narsalarni bezatishda juda ko‘p foydalanishgan. Yunonlar bu naqshning qirg'og'i ilonizi boMgan Meandr daryosiga qiyoslab meandr deb atashgan.
ha Meandrni Robot yordamida kataklarni boshqacha bo‘yab
m tasvirlash mumkin (6.28-rasm).
6.28-rasm.
6.25- masala
6.28- rasmdagi meandrni tasvirlovchi algoritm tuzing.
Qiziqarli masalalar
ber Biz hozirgacha yechgan masalalarda maydondagi holat to‘liq ke ilgan edi. Biz Robot qayerda turganini, u qayoqqa yurishi n rakligini, maydonho'lchami l qandayligini, devorlar maydon- ning qayerida joylas ganini bi ar edik. Bir so‘z bilan aytganda, uimani bilish mumkin bo‘lsa, hammasiniabilar edik.i Shuning chun ham algoritmni tuzish oson kech rdi: har b r qadam
oldindan ma'lum. Faqatgina bitta qiyinchilik bor edi, u ham
bo‘lsa algoritm ba‘zan uzun boMib ketardi.
Algoritm tuzish biror narsa nomaMum boMganda qiziqarliroq
kechadi. U holda Robotning o‘zi vaziyatga moslashishga va sharoitdan kelib chiqib, o‘zini turlicha tutishga majbur boMadi. Bu holda siz bilan bizga esa dasturchi sifatida har qanday holatlarni hisobga olishga to‘g‘ri keladi.
6.26- masala
engBiz Robot qayerda turganini bilamiz.sU yuqorida joylashgan
yaqin devorning oldiga borib to'xta hi kerak.
1-sharh
6.29- rasmda harxil birnechta maydon tasvirlangan bo‘lib, Robot borishi kerak bo ‘Igan katak strelkaning uchi yordamida ko ‘rsatilgan.
I I I
6.29-rasm.
Oxirgi to ‘rtinchi holatda yurishga jo y yo ‘q — Robot yuqori devor oldida turibdi. Masalaning murakkabli shundaki, Robot yuqoriga nechta qadam yura olishini avvaldan ayta olmaymiz' -2 tami, 5 tami, 0 tami yoki ho ‘Imasa, 100 000 tami (agar maydon yetarlicha katta bo ‘isa). Boshqacha aytganda, Robot «toki imkoni bor ekan yuqoriga» yuradi.
2-sharh
Har qanday masalani ikki dasturchi uchun o yin sifatida qarash mumkin. Awalbirinchi dasturchi Robot uchun aigoritm tuzpdi — Qo yilgan masaianing yechimi. Keyin ikkinchi dasturchi Robot maydonini quradi
— Masaia shartiga mos. U maydon o ‘lchamlarini tanlaydi, devorlar chizadi va xohlaganjoyiga Robotnijoylashtiradi. Shundan keyin Robot birinchi dasturchi tuzgan aigoritmni bajaradi va u to ‘g ‘ri natija berishi shart!
Yechim. Masalamizning yechimi hayron qolarli darajada sodda. Yechimga yo‘llanma berilgan "toki imkoni bor ekan yuqoriga" sharhining ichida yotibdi.
TOKI yuqori bo‘sh BAjJAR TAMyuqoriga
Ba'zan OM ritmni blok-sxema ko'rinishida tasvirlash zarar
qilmaydi, algo cha, foydali bo‘ladi, yuqoridagi algoritmning blok-sxem aksin yidagicha:
asi qu
112
6.27- masala
Robot devor bilan o'ralgan to‘g‘ri to'rtburchak ichida joylash- gan, maydon ichida boshqa devorlar yo‘q. Robotning qaysi katakda joylashgani nomaMum. Robotni o‘ng yuqori burchakka olib keluvchi algoritm tuzing.
bu Yechim. Oldingi masalaning yechimini bilganimiz uchun
masala oson yechiladi:
Do'stlaringiz bilan baham: |