Өлең, жыр, ақындар

Функция құрылымы

Оңтүстік-Қазақстан политехникалық колледж

Арнайы пәндер оқытушы

Убайдуллаева Индира Медетханқызы

 «Алгоритмдеу және бағдарламалау негіздері» пәні бойынша ашық сабақтың әдістемелік әзірлемесі

Сабақтың тақырыбы: Функция құрылымы

Сабақтың мақсаты

Білімділік: Функция және ішкі бағдарлама туралы түсінік беру. Функцияның қолданылуы және жазылу формуласы жайында қысқаша. Функция мен процедураны салыстыра отырып есептер шығару тәсілдерін меңгерту.           

Дамытушылық: Студенттердің сабаққа деген және өз мамандықтарына деген қызығушылығы мен белсенділігін арттыру.

Тәрбиелік: Студенттерді өзара сыйластыққа және колледж мүлкіне ұқыптылықпен қарауға тәрбиелеу.

Сабақтың түрі:  аралас сабақ

Көрнекі құралдар: SMART Board  электронды интерактивті тақтасы, дербес компьютер, «Алгоритмдеу және бағдарламалау негіздері» пәні бойынша электронды оқулық, әдістемелік нұсқау (пән бойынша оқу құралы).

Пән аралық байланыс: Жүйелік бағдарламалау, Өндірістік және экономикалық процестерді математикалық модельдеу, Объектілі бағытты бағдарламалау негіздері.

САБАҚТЫҢ ЖҮРУ БАРЫСЫ

1 Ұйымдастыру сәті (2 мин):  Аудиторияны сабаққа дайындау. Студенттердің назарын сабаққа жұмылдыру.

2 Оқушылардың танымдық белсенділігін арттыру. Білімді бақылауды ұйымдастыру (10 мин).  

     Өткен сабақтарды қайта жаңғырту, еске түсіру:

     Бағдарламалаудан терминдік диктант.

Студденттерге өтілген сабақ бойынша ауызша сұрақтар қойылады:

  1. Процедура дегеніміз не?
  2. Ішкі бағдарлама деген не?
  3. Параметрсіз процедура  дегеніміз не?
  4. For циклінің негізгі атқаратын қызметі қандай?
  5. Процедураның жалпы жазылу ережесі?
  6. Параметрі артып отырға циклді жазып көрсет?
  7. Параметрі кеміп отырға циклді жазып көрсет?

3 Жаңа сабақты түсіндіру (45 мин).

  1. Жаңа сабақты түсіндіру барысы алдымен лекция түрінде өтіледі. Көрнекіліктер көмегімен сабаққа арнайы дайындалған слайдтар  бойынша студенттерге жаңа сабақты түсіндіру.

ФУНКЦИЯ

Паскаль тілінде функцияны арнайы программа ретінде жеке жазуға болады. Сондықтан оны көмекші программа ретінде қарауға болады.

Функция программасы процедура программасынан ерекшеліктері:

- Функция бір ғана белгілі мән қабылдайды, яғни функцияның программадан алынатын нәтиже біреу-ақ;

- Нәтиже функция аты арқылы алынады да, негізгі бағдарламада пайдаланылады.

 Функция бағдарламасының жазылу үлгісі:

FUNCTION аты (формальды параметр): типі;

бейнелеу бөлігі

BEGIN

параметрлер бөлігі

END.

Функция фактілі параметрлердің мәндері берілгеннен кейін өз аты арқылы шақырылады. Сонымен қатар функцияны тікелей өрнектің ішінде шақыруға болады. Процедура мен функция айырмашылықтарын түсіну үшін екі санды қосу программасын процедура және функция түрінде жазайық.

- Процедура мен функция ұқсастығы олардың екеуінде де айнымалыларды, белгілерді тұрактыдарды бейнелеу бөліктері болады.

- Олардың бір-бірінен 1-ші өзгешелігі 1-шісінде PROCEDURE, ал 2-сінде FUNCTION қызмет сөздері пайдаланылады, процедурада, нәтиже (айнымалы) параметрлерінін типі процедура атауынан соң тұратын кіші жақша ішінде бейнеленсе, ал функцияда нәтиже үшін арнайы параметр алынбайды, нәтиже (функция мәні) функция атына меншіктіледі, сондықтан функция типі, аргументтер типтері белгіленген жақша сыртында, ":" арқылы көрсетіледі.

Мысалы: FUNCTION F(A: REAL; VAR b: REAL): REAL;

                  FUNCTION F(VAR a, b: INTEGER): INTEGER

                  FUNCTION F(A: INTEGER): CHAR;

- Негізгі бағдарламада функцияның мәнін тек функция атауы арқылы пайдаланылады.

Мысалы: Екі санның қосындысын табу керек.

1) PROGRAM PR;

    VAR A: INTEGER;

   PROCEDURE KOS(B,C: INTEGER; VAR K: INTEGER);

     BEGIN

        K:= B + C;

     END;

BEGIN 

   KOS (15,4,A);

   WRITELN (‘KOS=’,A:2);

END.

 

2) PROGRAM KFN;

    VAR A: INTEGER;

      FUNCTION KOS(B,C: INTEGER): INTEGER;

           BEGIN

                KOS:= B + C;

           END;

BEGIN

      A:= KOS(15,4);

      WRITELN(‘KOS=’, A:2);

END.

 

 

Мысалы: F=m!-k! есептeу кeрек:

PROGRAM FER;

VAR F:REAL; M, K: INTEGER;

FUNCTION FACT(N: INTEGER): REAL;

VAR I: integer;  P: REAL;

BEGIN

FOR  I:= 1 TO N DO  P:= P*I; FACT:= P;  END;

BEGIN

READLN (M,K);  F:= FACT (M) –FACT (K);

WRITELN('F=',F ); END.

 

Есеп №2.1. Берілген A,B,C  сандардың үлкенін табу программасын функция көмегімен құрыңыз.

Program Fn;
Var
A,B,C :Real;
Function Max(A,B:Real):Real;

Begin

If A>B Then Max:=A Else Max:=B

End;
Begin

Writeln(‘A,B,C -?');
Readln(A,B,C);
Writeln(' Max =’, Max(Max(A,B),C)); End.

Есеп №2.2. Функция көмегімен m және n мәндерін есептеңіз.

m := мах(x,y)

n := мах(2,x+y);

 

var x,y,m,n: integer;

function MaxNumber(a,b: integer): integer;

   var max: integer;

begin

   if a>b then max:=a else max:=b;

   MaxNumber := max;

end;

begin

   write(x,y-? ');

   readln(x,y);

   m := MaxNumber(x,y);

   n := MaxNumber(2,x+y);

   writeln('m=',m,'n=',n); end.

 

 Есеп №2.3. xm  дәрежесін есептеу программасын функция көмегімен есептеу.

program esep1;

var x,y:real; n:integer;

function step(k:real; m:integer):real;

var i:integer; j:real;

begin l:=1;

for i:=1 to m do j:=j*k;

step:=l;

end;

begin writeln('x,n-?'); read(x,n);

y:=step(x,n);

writeln(y:4:2); end.

 

Есеп №3. Координаттар осінде берілген нүктелер үшбұрыштың төбелерін анықтайды. Осындай үшбұрыштар саны бізде екеу. Осы үшбұрыштардың ауданын (функция бойынша) есептеп, олардың ауданын салыстыру керек. Қайсысының ауданын көп екенін, тең болса тең екенін экранға шығару программасын құру.

program esep;

var x1,x2,x3,x4,x5,x6,y1,y2,y3,y4,y5,y6,s1,s2:real;

     function aud(a1,b1,a2,b2,a3,b3:real):real;

     var a,b,c,p:real;

     begin

     a:=sqrt(sqr(a2-a1)+sqr(b2-b1));

     b:=sqrt(sqr(a3-a2)+sqr(b3-b2));

     c:=sqrt(sqr(a3-a1)+sqr(b3-b1));

     p:=(a+b+c)*2;       aud:=sqrt(p*(p-a)*(p-b)*(p-c));        end;

begin

writeln('x1,y1,x2,y2,x3,y3-?');

read(x1,y1,x2,y2,x3,y3);

s1:=aud(x1,y1,x2,y2,x3,y3);

writeln('x4,y4,x5,y5,x6,y6-?');

read(x4,y4,x5,y5,x6,y6);

s2:=aud(x4,y4,x5,y5,x6,y6);

if s1>s2 then writeln('Birinshi ulken') else

if s1=s2 then writeln('ekeui ten') else writeln('ekinshisi ulken'); end.

4 Жаңа материалды пысықтау (15 мин ).

1. Жаңа сабақ тақырыбына сәйкес студенттерге  тапсырмаларды орындау қажет, яғни тақырыпқа сәйкес есептер шығарылады.

2. Студенттерге алған білімдерін тексеру үшін кеспе қағаздары үлестіріледі. Кеспе қағаздарда қойылатын сұрақтар алдыңғы тақырып пен жаңа тақырып материалдарын қамтыған.

  1. Функцияның атқаратын қызметі.
  2. функция көмекші программасы деген не?
  3. Процедура деген не?
  4. Параметрсіз процедураға анықтама бер.
  5. Параметр дегеніміз не?
  6. Процедураның жалпы жазылу ережесін көрсет?
  7. Процедураны қалай сипаттаймыз.
  8. Циклдардан айырмашылығы қандай?
  9. Қандай жағдайларда процедуралар қолданылады.

5 Үй тапсырмасы (3 мин).  

1. Геометриялық фигуралардың ... функция көмегімен есептеу.

  • тіктөртбұрыштың, үшбұрыштың, параллелограмның ауданын
  • кубтың көлемін

2. Қосымша. Берілген үш таңбалы санның цифрларының қосындысын, көбейтіндісін, максимумын, минимумын есептейтін программа құрыңыз.

6 Сабақты қорытындылау (5 мин).  Бағалау және оны жариялау.

 

 

 

 


Пікірлер (1)

Пікір қалдырыңыз


Қарап көріңіз