36527

Параметры процедурного типа и их использование

Доклад

Информатика, кибернетика и программирование

Он основан на введении процедурных типов. Процедурный тип тип представляющий семейство процедур или функций для их использования в программе. Как и любой тип Турбо Паскаля процедурный тип должен быть описан а затем может быть использован для работы с переменными процедурного типа или константами.

Русский

2013-09-22

25.5 KB

0 чел.

Параметры процедурного типа и их использование

Процедуры и функции также могут быть параметрами других процедур или функций, что часто используется, особенно в задачах вычислительной математики. В Турбо Паскале имеется весьма гибкий механизм передачи процедур и функций в качестве параметра. Он основан на введении процедурных типов.

Процедурный тип - тип, представляющий семейство процедур или функций для их использования в программе. Как и любой тип Турбо Паскаля, процедурный тип должен быть описан, а затем может быть использован для работы с переменными процедурного типа (или константами). Описание процедурных типов имеет форму заголовка процедуры (или функции) с опущенным её именем:

type < имя процедуры-типа> = procedure ( <список формальных параметров>);

type < имя функции-типа> = function( <список формальных параметров>):<тип>;

Например: type fun =function (x:real):real;

При описании подпрограммы с процедурными параметрами такие параметры указываются формальным именем и соответствующим процедурным типом.

Пример процедуры, использующей описанный выше процедурный тип fun:

procedure print_f (n:byte; f:fun);

const count = 20;

var X:real; j:integer;

begin window(n, 1, n+20, 25);

for j:=1 to count do begin X:=j*(2*pi/count);writeln(X:5:3, f(x):5:5) end

end {print_f};

В программе, где описаны процедурные типы, могут быть объявлены переменные этих типов, которым можно присваивать имена соответствующих подпрограмм, описанных в данной программе, либо эти имена можно использовать как константы при вызове подпрограмм с процедурными параметрами. Стандартные процедуры и функции нельзя непосредственно передавать таким способом, но их можно "подменить" подпрограммами с другими именами


 

А также другие работы, которые могут Вас заинтересовать

42737. ИССЛЕДОВАНИЕ АНАЛОГОВЫХ КОМПАРАТОРОВ 76.5 KB
  При этом ОУ работает преимущественно в области положительного или отрицательного ограничения выходного напряжения проходя область усилительного режима только вблизи порога. Использование разных входов ОУ для подачи входного сигнала позволяет реализовать фиксацию уровня входного напряжения положительным или отрицательным перепадом напряжения на выходе компаратора.4 приведены схемы детекторов положительного и отрицательного уровней входного напряжения. Пороговый уровень входного напряжения в этих схемах задается величиной напряжения смещения...
42739. Линейный вычислительный процесс 241.5 KB
  Автомобиль в первый день проехал 24 намеченного пути во второй день 46 пути а в третий остальные 450 км. Используя операцию деления нацело найти количество полных метров в нем 1 метр = 100 см Вариант 2 Найти площадь треугольника по формуле Герона по заданным сторонам b c. Используя операцию деления нацело найти количество полных тонн в ней 1 тонна = 1000 кг Вариант 3 Три пассажира одновременно сели в такси.
42740. Разветвляющийся вычислительный процесс 208 KB
  Определить поместится ли квадрат в круге. Определить принадлежность заданной точки заштрихованной области включая ее границы. Определить есть ли среди них хотя бы одна пара одинаковых чисел. Определить принадлежность заданной точки заштрихованной области включая ее границы.
42742. Циклический вычислительный процесс 110 KB
  Составить математическую модель решения задач Задания 1 и Задания 2, нарисовать блок-схемы алгоритма, написать 3 программы на языке Паскаль (первая программа с использованием оператора цикла FOR, вторая – с использованием оператора WHILE, третья – с использованием оператора REPEAT). 2. Оформить в виде отчета (с.4).3. Ответить на контрольные вопросы (с.5). 4. Отчет представить преподавателю в распечатанном виде.
42743. Одномерные массивы 126 KB
  Размерность массива задать самостоятельно. Вариант Задачи 1 Заполнить массив случайными числами положительными и отрицательными из произвольного диапазона. Вывести созданный массив на экран расположив элементы в одну строку через пробелы.
42744. Разработка туристического продукта развлекательной тематики в гродненской области 476 KB
  раскрыть лексико-семантические и деривационные особенности молодежного сленга, отличающих его от других социолектов, а также его значимость как явления молодежной субкультуры второй половины ХХ–начала XXI вв...
42745. Изучение работы жидкостного U – образного манометра и комплекта приборов для измерения давления пневматической ветви ГСП 365 KB
  В процессе выполнения лабораторной работы студенты закрепляют знания по разделам Измерение давления и Дистанционная передача сигнала теоретического курса Технологические измерения и приборы; студенты знакомятся с принципом действия устройством измерительного пневматического преобразователя разности давления 13ДД11 в комплекте с вторичным прибором РПВ4. Величина давления контролируется по Uобразному манометру. измеряем давление на выходе из измерительного преобразователя 13ДД11 по образцовому...