prologda dastur boshqaruvini tashkil qilish usullari

DOCX 6 стр. 23,7 КБ Бесплатная загрузка

Предварительный просмотр (5 стр.)

Прокрутите вниз 👇
1 / 6
mavzu:38.prologda dasturi boshqa dasturdan farqi. reja: 1. prologda dasturi boshqa dasturdan farqi. 2. prologda dasturi boshqa dasturda tutgan o’rni. ushbu ma'ruza prologda dasturlashda dastur boshqaruvini tashkil qilish usullariga bag'ishlangan. albatta, biz oldingi ma'ruzalarda aniq yoki yashirin shaklda tashkil etishning ba'zi usullarini ko'rib chiqdik. hozirgacha bilvosita ishlatilgan narsa bu erda aniq shakllantiriladi. ushbu usullar qanday hollarda qo'llanilishini, qanday ishlashini va ulardan qanday foydalanishni tahlil qilamiz. shuningdek, biz hozirgacha tegmagan ba'zi yangi usullarni ko'rib chiqamiz. keling, orqaga qaytishni (yoki orqaga qaytish yoki orqaga qaytish yoki chuqurlikdan birinchi qidirish) muhokama qilishdan boshlaylik. orqaga qaytarish avvalgi ma'ruzalarda aytib o'tilgan. ushbu mexanizmning mohiyati quyidagilardan iborat: bir nechta variantlar mumkin bo'lgan dastur o'rnida prolog keyinchalik bu holatga qaytish uchun qaytish nuqtasini maxsus stekda saqlaydi. qaytish nuqtasi orqaga qaytishda protsedurani davom ettirish uchun zarur bo'lgan ma'lumotlarni o'z ichiga oladi. mumkin variantlardan biri tanlanadi, shundan so'ng dasturning bajarilishi davom etadi. muqobil variantlar mavjud bo'lgan dasturning barcha nuqtalarida ko'rsatkichlar …
2 / 6
hi berk ko'chaga chiqmaguningizcha, har bir vilkada bir xil yo'nalishda buriling. o'lik nuqtaga urilgandan so'ng, siz eng yaqin vilkaga qaytishingiz kerak. unda siz boshqa yo'nalishni tanlashingiz kerak. shundan so'ng, siz boshida bo'lgani kabi, barcha vilkalarda yana bir xil yo'nalishda burilish tanlashingiz kerak. biz labirintdan chiqmagunimizcha ushbu algoritmni davom ettiramiz. misol. keling, oilaviy munosabatlarni tavsiflovchi biroz o'zgartirilgan dastur misolidan foydalanib, orqaga qaytarish mexanizmining ishlashini ko'rib chiqaylik. biz domen va predikat tavsifi bo'limlarini o'zgarishsiz qoldiramiz va jumlalar bo'limidagi faktlar tartibini maqsadlarimizga mos ravishda o'zgartiramiz. biz quyidagi dasturni olamiz. domainlar /* domen tavsifi bo‘limi */ s=string /* string ma’lumotlar turi uchun sinonim kiriting */ predikatlar /* predikatlar deklaratsiyasi bo'limi */ ona(lar,lar) /* ona predikati ikkita argumentga ega bo'ladi string turi */ buvi(lar,lar) /* predikat uchun bir xil buvim */ bodkalar /* band tavsifi bo'limi */ ona("dasha", "masha"). /* "dasha" va "masha" bog'langan onaning munosabati */ ona("natasha", "dasha"). /* "natasha" - bu ona "dashi" …
3 / 6
riladi. buvi (b, v) maqsadini amalga oshirish uchun ikkita pastki maqsadni qondirish kerak: ona (b, z) va ona (z, v). birinchi pastki maqsad "ona bo'lish" munosabatini tavsiflovchi birinchi jumla bilan birlashtirilgan. bunday holda, b o'zgaruvchisi "dasha" nomi bilan, z o'zgaruvchisi esa "masha" bilan belgilanadi. ayni paytda kuzatuv oynasida return so'zidan keyin ko'rsatilgan joriy pastki maqsadni (ona("dasha", "masha")) hisoblash natijasi pastki maqsad ekanligini ko'rsatadigan yulduzcha (*) bilan birga keladi. muqobil yechimlarga ega. bu prolog keyingi qaytish uchun qaytish nuqtasi stekiga ko'rsatgich qo'yadigan joy. keyin "masha" nomi bilan belgilangan z o'zgaruvchisi bilan ikkinchi pastki maqsadli onani (z, v) qondirishga harakat qilinadi. ushbu pastki maqsadni ona predikati bilan bog'liq faktlardan biri bilan birlashtirishga urinish muvaffaqiyatsizlikka uchraydi. buning sababi, bizning bilim bazamizda mashaning bolalari haqida ma'lumot yo'q. muvaffaqiyatsizlik kuzatuv oynasida fail so'zi bilan ko'rsatiladi. u qaytish nuqtasi to'plamida saqlangan joyga qaytib keladi. bunday holda, orqaga qaytish vaqti bilan belgilangan b va z o'zgaruvchilari yana …
4 / 6
zga javobni o'zgaruvchilarning quyidagi qiymatlari bilan olish mumkinligini tushunamiz: b = natasha, v = masha. bu javob dialog oynasida ko'rsatiladi, shundan so'ng u qaytish nuqtasi stekida yozilgan oxirgi joyga qaytariladi. bu allaqachon "masha" nomi bilan belgilangan v o'zgaruvchisini chiqaradi. maqsadli ona (dasha, v) ona predikatini belgilaydigan protseduraning oxirgi bandining sarlavhasi bilan birlashtirilgan. v o'zgaruvchisi "sasha" nomi bilan belgilanadi. muloqot oynasi biz tashqi maqsad sifatida so'ragan savolga ikkinchi mumkin bo'lgan javobni ko'rsatadi: b = natasha, v = sasha. ona (dasha, v) pastki maqsadi uchun muqobil echimlar mavjud emas. shunga ko'ra, kuzatuv oynasida yulduzcha yo'q va buvini belgilaydigan qoidaning ikkinchi pastki maqsadi uchun yangi qiymatlarni tanlash uchun qaytishingiz mumkin bo'lgan joyni qaytarish to'plamida endi ko'rsatgich yo'q. munosabat. biroq, qaytish nuqtalari to'plamida hali ham dasturning "buvi bo'lish" munosabatini belgilaydigan qoidaning birinchi pastki maqsadi uchun o'zgaruvchilar qiymatlari joylashgan bo'limiga ko'rsatgich mavjud. prolog tizimi yo'l davomida o'zgaruvchilarni bo'shatib, orqaga qaytariladi. birinchi subgol uchinchi fakt ona …
5 / 6
o'zgaruvchisi "dasha" nomi bilan, z o'zgaruvchisi esa "sasha" bilan belgilanadi. birinchi pastki maqsadga mos keladigan boshqa variantlar yo'q. qaytish nuqtasi to'plami bo'sh. kuzatuv oynasida sizga qaytishingiz mumkin bo'lgan muqobil echimlar haqida gapiradigan ko'rsatkich yo'q. prolog tizimi ikkinchi pastki maqsadli onani ("sasha", v) biror narsa bilan moslashtirishga harakat qiladi, lekin buni amalga oshira olmaydi. faktlarning hech birida birinchi dalil sifatida "sasha" nomi yo'q. dasha uchun nabiralarni topishga urinishdagi yana bir muvaffaqiyatsizlik. dastur tugaydi. muloqot oynasi jarayonda topilgan ikkita echimni o'z ichiga oladi: b = natasha, v = masha b = natasha, v = sasha 2 yechimlar endi dasturchi orqaga qaytarishni boshqarish uchun qanday imkoniyatlarga ega ekanligini ko'rib chiqamiz. keling, qo'shimcha echimlarni olishga imkon beradigan va muvaffaqiyatsizlikdan keyin orqaga qaytarish usuli deb ataladigan birinchi chuqurlikdagi qidiruv mexanizmining modifikatsiyasini ko'rib chiqaylik. bu usul bitta javobni emas, balki ma'lum bir vaziyatda barcha mumkin bo'lgan javoblarni olishingiz kerak bo'lgan vaziyatda qo'llaniladi. misol uchun, agar savol …

Хотите читать дальше?

Скачайте все 6 страниц бесплатно через Telegram.

Скачать полный файл

О "prologda dastur boshqaruvini tashkil qilish usullari"

mavzu:38.prologda dasturi boshqa dasturdan farqi. reja: 1. prologda dasturi boshqa dasturdan farqi. 2. prologda dasturi boshqa dasturda tutgan o’rni. ushbu ma'ruza prologda dasturlashda dastur boshqaruvini tashkil qilish usullariga bag'ishlangan. albatta, biz oldingi ma'ruzalarda aniq yoki yashirin shaklda tashkil etishning ba'zi usullarini ko'rib chiqdik. hozirgacha bilvosita ishlatilgan narsa bu erda aniq shakllantiriladi. ushbu usullar qanday hollarda qo'llanilishini, qanday ishlashini va ulardan qanday foydalanishni tahlil qilamiz. shuningdek, biz hozirgacha tegmagan ba'zi yangi usullarni ko'rib chiqamiz. keling, orqaga qaytishni (yoki orqaga qaytish yoki orqaga qaytish yoki chuqurlikdan birinchi qidirish) muhokama qilishdan boshlaylik. orqaga qaytarish avvalgi ma'ruzalarda aytib o'til...

Этот файл содержит 6 стр. в формате DOCX (23,7 КБ). Чтобы скачать "prologda dastur boshqaruvini tashkil qilish usullari", нажмите кнопку Telegram слева.

Теги: prologda dastur boshqaruvini ta… DOCX 6 стр. Бесплатная загрузка Telegram