Элективный курс по информатике «Процедуры и функции на языке Pascal».Учитель НСШ Кумакшев А.Н, учитель БСШ№2 Вахмистров Г.Г.
Цели и задачи курса Формирование у учащихся интереса к профессиям, связанным с программированием. Формирование у учащихся навыков грамотной разработки программы. Углубление у школьников знаний, умений и навыков решения задач по программированию и алгоритмизации
Программа курса Знакомство с понятиями «процедуры и функции». (1ч.)Структура программы, содержащей подпрограмму. (2 ч.)Описание процедуры и функции. (4 ч.)Формальные и фактические параметры. (2 ч.)Отличие между процедурой и функцией. (1 ч.)Практическое занятие (2 ч.)
Описание процедур Описание процедуры имеет вид:procedure имя(список формальных параметров);раздел описаний begin операторы end;Пример:
Описание функций Описание функции имеет вид:function имя(список формальных параметров): тип возвращаемого значения;раздел описаний begin операторы end;
В Паскале помимо процедур можно использовать функции. Их еще называют функции пользователя ( в отличие от стандартных функций, таких как sin, random и др.) Обращение к функции приводит к вычислению ее значения – объекта типа real, integer или char.Function Имя(параметры):тип результата; var список локальных переменных begin Команды Имя:=выражение; end;Вызов функции пользователя осуществляется так же, как и стандартных функций в Паскале, т.е. их значения могут присваиваться переменным, входить в состав выражений.
Сравнение процедур и функций.
Обозначение процедур в блок/схемахБлок/схема процедуры записывается отдельно от основной программы.Команда вызова процедуры
В ЯП Паскаль в описании процедур в списке параметров нельзя описывать массивы таким образом: procedure Tabl(var x: array[1..n] of integer);Поэтому в основной программе до описания массивов можно указать тип данных массив: type arr = array[1..n] of integer;И затем этот тип данных использовать при описании массивов в самой программе и в процедурах при описании формальных параметров type arr = array[1..n] of integer;var i, k, z: integer; а :arr;procedure Tabl(var x: arr);
Составить программу нахождения наибольшего элемента в линейном массиве, используя вспомогательные процедуры нахождения наибольшего из двух чисел и создания массива случайных чисел.
program Function_of_user;uses Crt;var AB,BC,CD,DA,AC,S1,S2,S:real;Function f(a,b,c:real):real; var p:real; begin p:=(a+b+c)/2; F:=Sqrt(p*(p-a)*(p-b)*(p-c)); end;begin readln (AB,BC,CD,DA,AC); S1:=f(AB,BC,AC); S2:=f(CD,DA,AC); s:=S1+S2; writeln (S:8:2); Writeln (f(AB,BC,AC)+ f(CD,DA,AC):8:2); readln;end.Вызов функции
Приложения Процедуры и функции в ПаскалеПримеры функций и процедурМеханизм обмена данными основной программы и процедурыКонспект урокаЛабораторная работа