☰ Mundarija · Informatika

Qism dasturlar: funksiya va protsedura

Darslar 47–48 · 2 ta dars · M. R. Fayziyeva, D. M. Sayfurov, N. S. Xaytullayeva. Informatika va axborot texnologiyalari, 9-sinf. «Nashriyot uyi Tasvir», Toshkent, 2020
48

Amaliy mashg‘ulot: funksiyalar

Darslik: 95-bet
MaqsadAmaliy mashg‘ulotda funksiya va protseduralar yordamida masalalarni yechadi: eng kattasini topadi, juft sonlarni chiqaradi, funksiyani boshqa funksiya ichida chaqiradi.
Yangi so‘zlar
funksiyani chaqirish · calling a function: writing its name with the values in bracketsichma-ich chaqiruv · nested call: the result of one call is used as an argument of anotherprotsedura · procedure: a function that prints but returns no valueo‘rnatilgan nom · built-in name: names like max, len, print that should not be used for your own functions
Tushuntirish

Funksiyalar bilan ishlashda avval funksiyaning vazifasi bitta jumlada aytiladi: «ikki sonning kattasini qaytaradi», «n gacha bo‘lgan juft sonlarni chiqaradi». Birinchisi qiymat qaytaradi (return), shuning uchun natijani boshqa ifodada ishlatish mumkin: katta(katta(a, b), c) – uch sonning kattasi. Ikkinchisi natijani darrov ekranga chiqaradi va qiymat qaytarmaydi, ya’ni protsedura. Nomni mazmuniga qarab tanlang va o‘rnatilgan max, len kabi nomlardan qoching; shuning uchun kattaligini topuvchi funksiyaga biz katta nomini berdik. Funksiyani yozgandan keyin uni kamida ikki xil qiymat bilan chaqirib sinang. Funksiya e’lon qilinishi uning chaqirilishidan oldin turishi kerak, aks holda NameError chiqadi.

Namunalar
Uch sonning kattasi: def katta(a, b): ⏎     if a > b: ⏎         return a ⏎     else: ⏎         return b ⏎ a = int(input()) ⏎ b = int(input()) ⏎ c = int(input()) ⏎ print(katta(katta(a, b), c)) 14, 31, 22 uchun 31 chiqadi.
Juft sonlar protsedurasi: def juftlar(n): ⏎     for i in range(2, n + 1, 2): ⏎         print(i, end=" ") ⏎ juftlar(10) juftlar(10) ekranga 2 4 6 8 10 chiqaradi va hech qanday qiymat qaytarmaydi.
Sinfda faoliyat

«Funksiyalar kutubxonasi»: guruh 3 ta kichik funksiyani yozadi (kichigi, kvadrat, raqamlar yig‘indisi) va bir faylga to‘playdi; boshqa guruh ularni o‘z masalasida chaqirib ishlatadi.

Mashq
1
Uch sonning kichigini topish uchun kichik(a, b) funksiyasidan foydalanib dastur yozing (9, 4, 6 da 4).
2
Uch sonning o‘rta arifmetigini qaytaruvchi ortacha(a, b, c) funksiyasini yozing va ortacha(4, 5, 9) ni chiqaring (6.0).
3
juftlar(7) ekranga nima chiqaradi?
4
Nima uchun o‘z funksiyamizni max deb nomlamaslik ma’qul?