- •Алфавит языка
- •Данные языка Turbo Pascal
- •Типы данных в языке Turbo Pascal
- •Целочисленные (целые) типы данных
- •Операции и выражения в языке Паскаль
- •Стандартные арифметические функции в Паскаль (см методичку)
- •Лекции 4-7
- •Оператор вывода write и writeln
- •Структурные операторы языка Паскаль
- •Составной оператор
- •Условные операторы
- •Массивы
- •Описание одномерного массива.
- •Действия над элементами одномерного массива.
- •Алгоритм поиска максимального элемента в массиве и его номера
- •Сортировка массивов
- •Генерация случайных чисел
- •Двумерный массив
- •Ввод-вывод матриц
- •Обработка символьных и строковых данных
- •Лекции 15-17
- •Подпрограммы
- •1. Описание процедуры.
- •2. Описание функции.
- •Список литературы
2. Описание функции.
Описание функции состоит из заголовка функции и ее тела. Заголовок содержит зарезервированное слово function, идентификатор (имя) функции, список формальных параметров с указанием их типа и тип возвращаемого функцией значения. Тело функции представляет собой локальный блок, по структуре аналогичный программе.
Формат:
function<имя> (список формальных параметров): <тип результата>;
Const ...;
Type ...;
Var...;
begin
<операторы>;
end;
В теле функции всегда должен быть хотя бы один оператор, присваивающий имени функции значение. В точку вызова возвращается результат последнего присваивания.
Обращение к функции осуществляется по имени с указанием списка фактических параметров. Количество, типы и порядок следования формальных и фактических параметров должны совпадать.
Формат:
<имя функции> (список фактических параметров);
Рекурсии
Рекурсия– это такой способ организации вычислительного процесса, при котором процедура или функция в ходе выполнения составляющих ее операторов обращается сама к себе.
Примером программы с использованием рекурсии может быть программа вычисления факториала числа (n!= 1*2*…*n).
program primer6;
var n: integer;
f: longint;
function fakt(n: integer): longint;
begin
if n=1 then fakt:=1
else fakt:=n*fakt(n-1);
end;
begin
writeln('Введите число n');
readln(n);
f:=fakt(n);
writeln(f);
end.
Вопросы для самопроверки:
Перечислите встроенные процедуры и функции.
Что называется подпрограммой?
Назовите виды подпрограмм пользователя.
В чем состоит сходство и различие подпрограмм-процедур и подпрограмм-функций в языке Паскаль?
Чем отличаются локальные и глобальные параметры? Какова область их действия?
С помощью каких параметров происходит обмен информацией между основной программой и подпрограммой?
Как вызываются процедуры и функции?
Назовите два основных класса формальных параметров.
Каковы отличия параметров-значений от параметров-переменных, особенности их описания и применения.
Что такое рекурсия?
Список литературы
Основная литература:
Алексеев Е.Р. Turbo Pascal 7.0. Численные методы. – М.: АСТ, 2004.
Златопольский Д.М. Сборник задач по программированию. – 2-е изд., перераб. и доп. – СПб.: БХВ-Петербург, 2007.
Меженный О. А. Turbo Pascal. Самоучитель. – М.: Издательский дом «Вильямс», 2008.
Попов В.Б. Turbo Pascal для школьников. - М.: Финансы и статистика, 2005.
Фаронов В.В. Turbo Pascal: учеб. пособие. – СПб.: Питер, 2007.
Дополнительная литература:
Васильев П.П. Турбо Паскаль в примерах и задачах: Освой самостоятельно: Учеб. пособие для вузов / П. П. Васильев. – М.: Финансы и статистика, 2003. – 496 с.
Моргун А. Н. Справочник по Turbo Pascal для студентов и школьников.– М.: Издательский дом «Вильямс», 2006.
Немнюгин С.А. Турбо Паскаль. Практикум: Учеб. пособие для вузов/ С.А. Немнюгин. – 2-е изд. – СПб.: Питер, 2003. – 268 с.