Dinamik tiplashtirilgan


FUNKSIYALAR BILAN ISHLASH



Download 2,94 Mb.
bet23/77
Sana06.10.2022
Hajmi2,94 Mb.
#851613
1   ...   19   20   21   22   23   24   25   26   ...   77
Bog'liq
Dinamik

FUNKSIYALAR BILAN ISHLASH

7.1. Formal, joriy va lokal oʻzgaruvchilar


Koʻpincha masalalar uchun dastur ishlab chiqish jarayonida masa­la qanday oʻzgaruvchilar uchun berilganligi koʻrsatilmaydi. Lekin uni yechish uchun shartli ravishda oʻzgaruvchilar tanlab olinadi va ana shu oʻzgaruvchilar uchun qoʻyilgan masalani toʻla yechish qonun-qoi­da­lari (algoritmi) ishlab chiqiladi. Bunday oʻzgaruv­chilar formal oʻzgaruvchilar deyiladi. Masalan, kvadrat tenglama uchun a, b va c koeffitsiyentlar formal oʻzgaruvchilar deb qaraladi.
Shu sinfga taalluqli boʻlgan konkret masalada esa odatda barcha oʻzgaruvchilar yoki ularning qiymatlari aniq koʻrsatib qoʻyiladi va ma­sa­lani ana shu qiymatlar uchun hal qilish talab qilinadi. Bunday oʻzgaruvchilar argumentlar deb ataladi. Endi masalani yechish uchun yaratilgan hamma qonun-qoidalarni formal oʻzgaruvchilar oʻrni­­ga masalada berilgan argumentlarga qoʻllash lozim boʻ­ladi.
Masala. Boʻyi N, eni M boʻlgan toʻg‘ri toʻrtburchak yuzi to­pilsin.
Yechish g‘oyasi. Ma’lumki, toʻg‘ri toʻrtburchak yuzi S=A∙B formula bilan topiladi. Bu yerda A – toʻrtburchak boʻyi, B – eni. Ammo bizga berilgan masalaning shartiga koʻra, S=N∙M. Bu misolda A va B formal oʻzgaruvchi, N va M esa argument hisoblanadi. Formal oʻzgaruvchi bilan argument ustma-ust tushishi ham mumkin.
Masala shartida koʻrsatilmagan, lekin masalani yechish uchun hisoblanishi zarur boʻlgan oʻzgaruvchilar oraliq oʻzgaruvchilar deyi­ladi.
Oraliq oʻzgaruvchilar faqat bitta protseduraga taalluqli boʻladi. Shuning uchun ularni lokal (mahalliy) oʻzgaruvchilar deb ham yuri­tiladi. Masalan, kvadrat tenglamani yechishda diskriminantni ifoda­lovchi D oʻzgaruvchi lokal hisoblanadi.

7.2. Funksiyalarni e’lon qilish va foydalanish


PYTHON tilida koʻplab tipik masalalar uchun funksiyalar (ularni metodlar deb atash mumkin) joriy qilingan. Biz hozirgacha bunday funksiya-metodlarning ayrimlari bilan tanishib chiqdik. Tabiiyki, turli mazmundagi masalalar uchun dastur ishlab chiqishda bu funksiyalar yetarli boʻlmasligi mumkin. Python tilida dasturchilar uchun ehtiyojga koʻra yangi funksiyalarni yaratish va foydalanish imkoniyatlari nazarda tutilgan.
Funksiyalar kichik bir masalani hal qilishga qaratilgan ma’lum bir amallar ketma-ketligini turli qiymatlar uchun qayta-qayta hisoblashga toʻg‘ri kelgan hollarda tashkil qilinadi. Bu holat dasturchining keying ishlarini osonlashtiradi. Funksiyalar formal oʻzgaruvchilar (argumentlar) uchun tashkil qilinadi.
Shunday masalalar mavjudki, ularni hal qilish jara­yonida bir nechta kichik masalalarga ajratish mumkin boʻladi. Agar hosil boʻlgan masalalar bitta sinfga tegishli boʻlsa yana ham yaxshi. Bu holda bir sinfga tegishli boʻlgan har bir masalaga alohida dastur yozish oʻrniga, ulardan bittasi uchun argumentlar deb ataluvchi formal oʻzga­ruvchilar tanlanadi va masalaning ana shu oʻzgaruvchilar ychun yechish buyruqlari ketma-ketligi ishlab chiqiladi. Funksiyalar­ni bun­day masalalarga nisbatan qoʻllash ham mumkin. Bu holda umumiy masalaning yechimlari kichik masalalar yechimlarining kombinatsiyalari shaklida ifodalanadi.
Bitta dastur tarkibidagi barcha funksiyalar ishini boshqaradigan dastur asosiy deb ataladi.
Agar dasturda funksiyalardan foydalanish rejalashtirilgan boʻl­sa, har bir funksiya uchun asosiy dasturdan oʻtadigan ma’lumotlar (parametrlar) roʻyxati hamda qiymati funksiyadan asosiy dasturga qaytishi lozim boʻlgan oʻzgaruvchi belgilab olinadi.
Funksiyaga undagi argumentlar oʻrniga parametrlarni koʻrsatib (roʻyxatdagi 1-argument oʻrniga 1-parametr, 2- argument oʻrniga 2-parametr va hokazo) murojaat qilish mumkin.
Funksiyaga murojaat qilinganda, asosiy dasturning bajarish jara­yoni toʻxtaydi va kompyuter funksiyani bajara boshlaydi. Funk­siyadagi barcha buyruqlar parametrlar uchun toʻla bajaril­gandan soʻng, kompyuter yana asosiy dasturning kelgan qismidan boshlab navbatda turgan buyruqlarni bajarishda davom etadi.
Funksiyalar bilan ishlash imkoniyatiga ega boʻlish uchun ularga birinchi marta murojaat qilishdan avval aniqlangan boʻlishi lozim. Bunda funksiya nomi va argumentlar roʻyxati funksiyaning umumiy belgisi hisoblanadi va unga ana shu belgiga koʻra murojaat qilinadi.
Funksiyani aniqlash uning umumiy belgilari va jismini koʻrsa­tishdan iborat boʻlib, quyidagicha tuzilmaga ega:
def funksiya_nomi (roʻyxat);
funksiya_jismi
Bu yerda funksiya_nomi oʻzgaruvchi-identifikatorni anglatadi. Bu nom boshqa oʻzgaruvchilar kabi takrorlanmas boʻlishi lozim; roʻyxat argumentlarni oʻz ichiga olishi yoki boʻsh boʻlishi ham mumkin; funksiya_jismi turli amallar va koʻrsatmalar ketma-ketligidan iborat boʻlib, odatda yuqo­rida ta’kidlanganidek, alohida olingan kichik bir masalani hal qilishga qaratiladi. Jismning soʻnggi bajariladigan buyrug‘i return boʻlib, u boshqaruvni funksiyaga murojaat qilish nuqtasiga uzatish (qaytarish) amalini bajaradi. Bu buyruq umumiy koʻrinishda
return ifoda
koʻrinishida yoziladi. Return operatoridan keyin koʻrsatilgan ifoda funksiyadan asosiy dasturga uzatiladigan qiymatni belgilab beradi. Bu operator funksiyadan hech qanday qiymatni qaytarish koʻzda tutil­magan hollarda yozilmaydi. Bitta funksiya jismida bir nechta return buyruqlaridan foydala­nish mumkin.
Funksiyalarni e’lon qilishga namunalar keltiramiz:
def pr ()
print(‘salom’)
def f(x)
y=x+5
return y
def f(x, y, z)
return x+y+z
Keltirilgan a-namuna ekranga “salom” matnini chiqarish bilan oʻz ishini tugatadi. Hech qanday ma’lumot qaytarmaydi; b- namuna esa oʻziga parameter sifatida uzatiladigan x – ning qiymati uchun   ifodaning qiymatini hisoblaydi va shu qiymatni asosiy dasturga qaytaradi; c-namuna esa parameter sifatida uzatilgan x, y va z – larning qiymatlari uchun asosiy dasturga  ifodaning qiymatini qaytaradi.
Funksiyaga murojaat qilganda parametrlar roʻyhatga koʻra mos oʻrinda turgan argumentlar bilan almashtiriladi va bunda tiplarining oʻzaro mosligi qat’iy nazorat qilinadi. Bunday moslik boʻlmaganda PYTHON tilida oʻzga­ruv­chilar tiplarini toʻg‘ridan-toʻg‘ri almashtirish ham koʻzda tutilgan. PYTHON haqida fikr yuritganda, “tiplarning qat’iy mosligiga alohida e’tibor beriladi.
Funksiyaga murojaat qilish (sodda qilib aytganda, uni chaqirish) oddiy qavslar yordamida amalga oshiriladi. Qavslar ichida esa argumentlar roʻyxati koʻrsatiladi:
funksiya_nomi (parametrlar roʻyxati);
Argumentlar (funksiya argumentlari) va parametrlar oʻrtasidagi moslik rasmiy va argumentlarning roʻy­xat­dagi oʻrniga koʻra aniqlanadi.
Parametrlar murojaat qiluvchi dastur tomonidan uzati­ladi va funksiya jismidagi koʻrsatmalarni bajarishda ana shu ularning qiymatlaridan foydalaniladi.
Yuqoridagi fikrlarni amaliyotga tatbiq etishga urinib koʻraylik.

Download 2,94 Mb.

Do'stlaringiz bilan baham:
1   ...   19   20   21   22   23   24   25   26   ...   77




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