Tasdiqlayman” 230- maktab rahbari G. Z. Alimatova Toshkent shahar



Download 22.17 Kb.
Sana28.06.2017
Hajmi22.17 Kb.

Tasdiqlayman”

230- maktab rahbari

G.Z.Alimatova

Toshkent shahar Yashnobod tumani

230-umumta’lim maktabiningi

informatika fani o’qituvchisi

9-sinflar uchun

protsedura va funksiyalar”



Mavzusida 1-soatlik dars ishlanmasi


2016-2017 o’quv yili


Protsedurava funksiyalar.

Ko’pinch ma’lum amallar majmuyini dasturning turli qismida takrorlashga to’g’ri keladi. Paskalda ko’p takrorlanadigan amallar majmuyini asosiy dasturdan ajratib olib, ulardan alohida bloklar-protsedura va funksiyalar tashkil qilish mumkin. Har bir shunday tashkil etilgan protsedura va funksiyaga albatta nom beriladi. Kerakli protsedura yoki funksiyaga uning nomi orqali murojaat etiladi. Protsedura va funksiyalardan oqilona foydalanib tuzilgan dastur, odatda, soddava tushunarli bo’ladi.

Protseduralar ham,funksiyalar ham ma’lum amallar majmuyidan iborat bo’lsa, ular bir-biridan nimasi bilan farq qiladi?

Funksiyalar, umuman olganda, biror bir qiymatni hisoblashga mo’ljallab tuziladi. Pirovard natijada hisoblangan qiymat funksiya nomiga o’zlashtiriladi.

Protseduralar esa ma’lum bir amallarketma-ketligini bajarish maqsadida tuziladi. Bunda biror natijaviy qiymat hisoblanishi emas, balki berilgan amallar kaetma-ketligi bajarilishining o’zi ahamiyatga ega. Masalan, dasturda tomonlari berilgan uchburchak yuzini bir necha marta hisoblash kerak bo’lsa, funksiyadan foydalanish maqsadga muvofiq. Chunki bunda har safar birgina qiymat-uchburchakning yuzi hisoblanadi. Agar uchlarining berilgan tomonlari bo’yicha ekranda bir nechta uchburchak chizish talab etilgan bo’lsa, tabiiyki, birgina qiymatni hisoblashga mo’ljallangan funksiya emas, balki, ekranda uchburchak chizish jarayonini tashkil etuvchi protsedura tuzish lozim.

Protsedura va funksiyalarni ularga murojaat etishda beriladigan ma’lum bir qiymatlarga bog’liq qilib tashkil qilib etish ham mumkin. Bu qiymatlar parametrlar, shu tarzda tashkil etilgan protsedura va funksiyalar esa parametrli protsedura va funksiyalar deyiladi.

Protsedura va funksiyalar sarlavha bilan boshlanadi. Protsedura sarlavhasi quyidagi ko’rinishga ega:

Procedure [protsedura nomi] (parametrlar);

Funksiya sarlavhasi quyidagi umumiy ko’rinishga ega:

Function [funksiya nomi] (parametrlar): [funksiya qiymatining turi];

Parametrli protsedura funksiyalarda parametrlarning turlari ham tavsiflanadi. Maslan:

Function daraja (a, n : Integer):Integer; yoki protcedure shifr (satr:String);

Quyida ko’rib turganingizdek, protsedura va funksiyalar o’xshash tuzilishiga ega. Ularning tuzilishi dasturning tuzilishidan deyarli farq qilmaydi. Shuni aytish lozimki, asosiy dasturda tavsiflangan o’zgarmas va o’zgaruvchilar umumiy (global) o’zgarmas hamda o’zgaruvchilar deyiladi. Ularda dasturningistalgan qismida, jumladan, protsedura va funksiyalarning ichida ham foydalansa bo’ladi. Biror protsedura yoki funksiyaning ichida tavsiflangan o’zgarmas va o’zgaruvchilar mahalliy (lokal)

Protseduraning umumiy tuzilishi:

Procedure [protsedura nomi]

(parametrlar);

Label

[nishonlar];



Const

[konstantlar tavsifi];

Var

[o’zgaruvchilar tavsifi];



«Ichki» protsedura va funksiyalar;

Begin


[protsedura tanasi] {dastur}

End;


Funksiyaning umumiy tuzilishi:

Function [funksiya nomi]

(parametrlar):turi;

Label

[nishonlar];



Var

[o’zgaruvchilar tavsifi];

«ichki»protsedura va funksiyalalar;

Begin


[funksiya tanasi] {dastur}

End;

o’zgarmas va o’zgaruvchilar deyiladi. Ulardan faqat o’zi tavsiflangan protsedura yoki funksiyaning ichida foydalanish mumkin. Bu holda mahalliy o’zgaruvchining qiymati, boshqa protsedura va funksiyalarda hamda asosiy dasturda umumiy o’zgaruvchining qiymati hisobga olinadi.

1-misol. [20,83],[178,391],[211,746]oraliqlardagi barcha butun sonlar yig’indisini topish dasturini tuzing.

Yechish. Berilgan uchta oraliqdagi butun sonlarning yig’indisi hisoblash uchun parametrli takrorlash operatoridan uch marta foydalanishga to’g’ri keladi. Masalani berilgan oraliqning boshlang’ich va oxirgi qiymatlarini parametr sifatida olib, shu oraliqdagi butun sonlarning yig’indisini hisoblovchi funksiyadan foydalanib ham yechish mumkin.

Programm Summa;

Var i,s,s1,s2,s3 : Integar;

Function Sum (n1,n2: Integer): Integer;

Begin

S:=Sum (20,83);s2 :=Sum (178,391);s3:=Sum:=s;



End;

Begin


S1:=Sum(20,83); s21 := Sum(178,391); s3:=Sum(211,746);

S:=s1+s2+s3; WriteLn(‘S=’,s);

End

2-masol. Uchburchakning berilgan tomonlari bo’yicha, uning balandliklarini aniqlovchi dastur tuzing.



Program Uchburchak_balandligi;

Var a, b, c, ha, hb, hc: real; {a,b,c- Uchburchak tomonlari}

Var yp, s: real;

Begin


Yp:=(a+b+c)/2; {perimetr yarmini hisoblash}

S:=Sqrt(yp*(yp-a)*(yp-b)*(yp-c)); {yuza hisoblash}

H_UB:=2 s/a; {Funksiyaga qiymat berildi}

End;


Begin

Write(‘Uchburchak tomonlari (a,b,c) kiritilsin ‘);

ReadLn(a,b,c);

Ha:=H_UB(a,b,c);hc:=H_UB(c,b,a);

WriteLn (‘ Uchburchak balandliklari: ‘);

WriteLn(ha=’, ha:10:4,’hb=’,hb:10:4 );

ReadLn;

End.


3-misol. Uchta uchburchak uchlarining quyidagi koordinatalri berilgan:

1)(120,20),(80,170),(140,150); 2)(200,97),(500,156),(210,180);

3)(300,190),(200,390),(415,222).

Shu uchburchaklarni mos ravishda qizil, sariq yashil ranglarda chizish dasturini tuzing.

Uses Graph;

var gd, gm: Integer;

Procedure Uchburchak(x1,y1,x2,y2,x3,y3,col:Integer);

begin


SetColor(col); Line(x2,y2,x3,y3);

Line(x3,y3,x1,y1);

end;

Begin gd:=0; InitGraph(gd,gm, “);



Uchburchak(120,20,80,170,140,150,4);

Uchburchak(200,97,500,156,210,180,14);

Uchburchak(300190,200,390,415,222,2); ReadLn;

CloseGraph;

End.

Yuqorida keltirilgan dasturlarga e’tiborni qaratib, quyidagi xulosaga kelish mumkin: protsedura va funksiyalarga murojaat etish vaqtida funksiya nomialbatta biror operator tarkibida, protsedura nomi esa alohida(mustaqil)yozilar ekan.



Savol va topshiriqlar

  1. Dasturda protsedura va funksiyalar qanday maqsadda qo’laniladi?

  2. Protsedura va funksiyalarning farqi nimada?

  3. Parametrli protsedura va funksiyalar haqida so’zlab bering.

  4. Protseduraning umumiy tuzilishini ifodalab bering.

  5. Funksiyaning umumiy tuzilishini ifodalab bering.

  6. Dasturdagi umumiy va mahalliy o’zgaruvchilar haqida so’zlab bering.

  7. Funksiya o’rniga qachon protseduraniqo’llash mumkin?

Mashqlar

  1. Uchta to’g’ri to’rtburchakning har birining bittadan dioganali uchlarining koordinatalari berilgan: 1) 20,20 va 80,200; 2) 200,97 va 500,156; sariq va yashil ranglardachizish dasturini tuzing.

2. Berilgan n natural son uchun S=1.5+2.6+3.7+...+n.(n+4)yig’indini hisoblash dasturini protsedura yordamida tuzing.

  1. Uchta sondan kattasini topish dasturini tuzing. Buning uchun ikkita sondan kattasini topish funksiyasini tuzib, undan foydalaning.

Protsedura va funksiyalar mavzusini takrorlash.

1.Berilgan matndagi ‘a’ belgini ‘b’ belgiga, ‘m’ belgini ‘s’ belgiga ‘f’ belgini ‘h’ belgiga almashtiruvchi dasturni protsedura yordamida tuzing.



2.y=x5+3x funksiya qiymatini x ning -9, -5, -2, 2, 5, 7 qiymatlarida hisoblash dasturini tuzing. Darajani ko’paytirish orqali hisoblash uchun funksiya tuzib oling.

3.protsedura yordamida ekranning o’rtasida ichma-ich joylashgan xar xil rangli15 ta aylana chizuvchi dastur tuzing.

Do'stlaringiz bilan baham:


Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2017
ma'muriyatiga murojaat qiling

    Bosh sahifa