Dinamik tiplashtirilgan


FUNKSIYALAR BILAN ISHLASH



Download 2,16 Mb.
bet23/56
Sana09.03.2022
Hajmi2,16 Mb.
#487710
1   ...   19   20   21   22   23   24   25   26   ...   56
Bog'liq
Ataxonov maruza

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 xning 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,16 Mb.

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




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