Урок 3.

Тема урока: Подпрограмма. Типы подпрограмм. Описание подпрограмм языком
 
программирования. Обращение к подпрограммам в программе.  «Использование подпрограмм - процедур».

Цели урока:

          Научиться использовать структурный подход в программировании – разбиение сложной   задачи на более простые. Узнать, как для этого можно использовать подпрограммы-процедуры с параметрами.

 

 

Ход урока:

I.                  Орг. Момент. Сообщение целей урока.

II.                Проверка домашнего задания

1.                (все  ученики пишут на компьютерах программы из дом.задания).

2.                Анализ задачи.

               Дан пятиугольник  со сторонами a,b,c,d,e и диагоналями d1,d2. Найти площадь                пятиугольника.  Программу написать с функцией.

program s_1;

var a,b,c,d,e,d1,d2,s1,s2,s3,s5:real;

function tre_1(m,n,k:real):real;

var p:real;

begin

p:=(m+n+k)/2;

tre_1:=sqrt(p*(p-m)+(p-n)*(p-k));

end;

begin

read(a,b,c,d,e,d1,d2);

s1:=tre_1(a,b,d1);

s2:=tre_1(d1,c,d2);

s3:=tre_1(d2,e,d);

s5:=s1+s2+s3;

write('s5=',s5:5:2);

end.

 

III.              Актуализация опорных знаний:

A.     Что такое  функция Pascal?

B.     Где обявляется в основной программе подпрограмма- функция?.

C.     Как объявляется подпрограмма-функция?

D.      Как вызывается в основной программе подпрограмма- функция?.

 

IV.             Новая тема.

1.      Мотивация. Как написать программу д/з с процедурой? На этом занятии научимся   использовать подпрограммы-процедуры с параметрами.

2.     Теоретическую часть разобрать самостоятельно с помощью презентации» Подпрограммы».

Вопросы:

Procedure Ploshad3  (a, b, c: real;                                       var s:real);

                                    Параметры-значения                       Параметры-переменные

Параметры-значения используются для задания начальных значений в процедуре,

Параметры-переменные для вывода результата.

·        Как в основной программе вызывается процедура?

В основной программе процедура вызывается аналогично вызову  функции:

Имя процедуры(фактические параметры)

Ploshad3 (AB, BC, AC, S);

 

Функция:

Function имя функции(входные данные:тип входных данных);тип результата;

Var объявление локальных переменных;

begin

Операторы;

End;

Процедура:

 

V.    Практическая часть урока:

Задача.   Дан пятиугольник  со сторонами a,b,c,d,e и диагоналями d1,d2. Найти площадь пятиугольника.  Программу написать с процедурой.

Задание.  Открыть программу с функцией. Внести изменения в программу

program Prog2;

var a,b,c,d,e,d1,d2,s1,s2,s3,s5:real;

Procedure Ploshad(m,n,k:real; s:real);

   var p:real;

     begin

       p:=(m+n+k)/2;

       s:=sqrt(p*(p-m)*(p-n)*(p-k));

     end;

begin

Writeln('Задайте стороны 5-и угольника  и его диагонали d1,d2');

read(a,b,c,d,e,d1,d2);

Ploshad (a,b,d1,s1);

Ploshad (d1,c,d2,s2);

Ploshad (d2,e,d,s3);

s5:=s1+s2+s3;

write('s5=',s5:5:2);

end.

 

VI.               Самостоятельная работа.

Задача. Даны 4 числа  A, B, C, D. Найти наибольшее число. Программу написать с процедурой.

VII.           Итог урока. Выставление оценок за урок.

 

VIII.       Домашнее задание.

Задача: Составить программу с использованием процедуры, определяющей наибольший элемент одномерного массива.

Program max_tabl;

const n=5;

var

   a:array[1..n] of real;  i:integer;

   max2:real;

procedure max(x1,x2 : real;var max:real);

begin

     if x1>x2 then

     max:=x1

     else max:=x2;

end;

begin

     writeln ('Massiv');

     for i:=1 to n do

readln(a[i]);

     begin

          max(a[i],a[i+1], max2);

          write (max2:8:2);

     end;end.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Hosted by uCoz