|
Dasturlash uslublari va paradigmalar
|
bet | 9/30 | Sana | 26.01.2024 | Hajmi | 0,97 Mb. | | #146384 |
Bog'liq PARADIGMA YNYuqori tartibli funksiya - Dasturlashda boshqa funksiyalarni argument sifatida qabul qiladigan yoki natijada boshqa funksiyani qaytaradigan funksiyadir. Asosiy g'oya shundaki, funktsiyalar boshqa ma'lumotlar ob'ektlari bilan bir xil maqomga ega. Yuqori tartibli funksiyalardan foydalanish, ular bajaradigan hisob-kitoblarning murakkabligini hisobga olgan holda, mavhum va ixcham bo'lgan dasturlarda qo’llaniladi.
Yuqori tartibli funksiyalar boshqa funktsiyalarni boshqaradigan funktsiyalar hisoblanadi. Ularning argumentlari anonim va sof funktsiyalar hisoblanadi shuningdek, asosiy funksiyani bajargandan so'ng, natija sifatida qaytarilishi mumkin.
Toza funksiya (savolda sof funksiya deb yozilgan bo’lishi kerak edi) - Faqat o'z kontekstini boshqaradigan va butun dasturning global kontekstiga (holatiga) ta'sir qilmaydigan kod blok hisoblanadi.
# Hech narsani o'zgartirmaydigan va bir xil argument berilgan sof funksiya har doim bir xil natijani qaytaradi:
def inc(x):
return x + 1
>>> inc(10)
11
>>> inc(10)
11
>> > inc(10)
11
Rekursiya deb shundаy kоnstruktsiyagа аytilаdiki, funktsiya o‘zini o‘zi chаqirаdi. To‘g‘ri vа nisbiy rekursiya аjrаtilаdi. Funktsiya to‘g‘ri rekursiv deyilаdi, аgаr tаnаsidа o‘zigа murоjааt bo‘lsа. Funktsiya bоshqа funktsiyani chаqirsа vа bu funktsiya o‘z nаvbаtidа birinchi funktsiyani chаqirsа, bundаy funktsiya nisbiy rekursiv deyilаdi.
Rekursiyani qo‘llаshgа klаssik misоllаr – dаrаjаggа оshirish vа sоn fаktоriаlini hisoblаsh. Bu misоllаr rekursiyani tushuntirish qulаy bo‘lgаni uchun klаssik hisoblаnаdi, lekin ulаr iterаtsiоn usullаrgа ko‘rа аfzаllikkа egа emаs.
10) Mantiqiy dasturlash. Mantiqiy dasturlash tillari. Predikatlar. Deklorativ dasturlash.
Mantiqiy dasturlash ma’lumotlarni qayta ishlashni muvaffaqiyatli natija beradigan ta’riflarning ixtiyoriy tarkibini (tenglamalar, predikatlar shakllari) tanlashga qisqartiradi. Aynan formulalarni qayta ishlash asos bo‘ladi - hisoblash formula bo‘yicha operatsiya sifatida qaraladi. Agar u bajarilmasa, ta’riflarning boshqa variantlari qidiriladi. MD tillarida namunalar bilan mos keladigan variantlarni to‘g‘ridan-to‘g‘ri sanab o‘tish va tanlov muvaffaqiyatsiz bo‘lgan taqdirda orqaga qaytishni tashkil qilish mumkin deb hisoblanadi. Variantlarni sanab o‘tish chuqurlikdagi grafikni kesib o‘tishga o‘xshaydi. Aniq umidsiz qidiruvni istisno qilish uchun ro‘yxatga olishni nazorat qilish vositalari mavjud.
Deterministik bo‘lmagan jarayonlarni bajarish uchun izohli avtomat diagnostik vaziyatga tushganda davomiy hisob-kitoblar tsikli sifatida ifodalanishi mumkin. Davomi funktsional ob’ekt ta’riflari to‘plamidan boshqa variantni tanlashdan iborat (orqaga qaytish). Agar formulaning qiymatini hisoblash imkonini beruvchi variantlar to‘plamini tanlash imkoni bo‘lmasa, hisoblash muvaffaqiyatsiz deb hisoblanadi.
|
| |