Основные операторы языка Turbo-Paskal. Процедуры и функции

Основные операторы языка Turbo-Paskal. Процедуры и функции

Основные операторы языка Turbo-Paskal. Процедуры и функции

СОДЕРЖАНИЕ
ВВЕДЕНИЕ
1. ОСНОВНЫЕ ОПЕРАТОРЫ ЯЗЫКА TURBO-PASCAL
1.1 Оператор присваивания
1.2 Составной оператор
1.3 Оператор безусловного перехода
1.4 Условные операторы
1.5 Оператор выбора Case
1.6 Операторы цикла
2. Процедуры и функции
2.1 Описание функции
2.2 Формальное описание функции
2.3 Вызов функции
2.4 Формальное описание процедуры
2.5 Вызов процедуры
ВЫВОДЫ
ЛИТЕРАТУРА

ВВЕДЕНИЕ
Тема реферата «Основные операторы языка Turbo-Paskal. Процедуры и функции» по дисциплине «Вычислительная техника и основы программирования».
Цель выполнения работы – ознакомиться с основными операторами языка Turbo-Paskal, процедурами и функциями.

1. ОСНОВНЫЕ ОПЕРАТОРЫ ЯЗЫКА TURBO-PASCAL

Описание действий, которые должны быть выполнены над данными — основная часть любой программы. Единицей действия в программе является оператор. Обобщенная структура оператора в программе имеет вид
<метка> <оператор>
1.1 Оператор присваивания
<переменная> =<выражение>;
Выполнение оператора заключается в вычислении значения выражения и присваивании его переменной, стоящей в правой части. Следует учитывать, что переменная и выражение должны быть совместимы по типу.
Пример
var I,J integer;
A,B real;
Lon boolean;

I =12; J =I+10;A =0.25; B =Sin(A);Lon =A<>B;

1.2 Составной оператор
Begin <оператор 1>;<оператор 2>;…;<оператор N> end;
Составной операторпозволяет объединить несколько операторов в один. Здесь Begin и end представляют собой операторные скобки.
Пример
Begin X =0.5;Y =Sin(X);write(X,Y){вывод результата вычислений} end;

1.3 Оператор безусловного перехода

Goto <метка>;
Обеспечивается безусловный переход к оператору, помеченному меткой.
Существует ряд ограничений на использование данного оператора, суть которых сводится к тому, что нельзя передавать управление внутрь другого оператора, минуя его начало.
Пример

Примечание Безусловные переходы в программе могут обеспечиваться также с помощью процедур Exit и Halt. Выполнение процедуры Exit заключается в безусловном выходе из текущей подпрограммы (процедуры или функции), а в основной программе в ее завершении. Выполнение процедуры Halt безусловно прекращает выполнение программы.
Пример

1.4 Условные операторы
Условные операторы используются для организации разветвлений в программах.

Пример

Пример
if X mod 2=0 then{подсчет количества четных чисел}
begin Kol =Kol+1; writeln(‘Четное’) end {составной оператор}
else writeln(‘Нечетное’);

1.5 Оператор выбора Case

Case <выражение> of
<список константных значений 1 > <оператор 1>;
<список константных значений 2 > <оператор 2>;
{ else <оператор 0>}
end;
Выражение относится к ординальному типу (т.е. любому простому кроме Real).
Список константных значений содержит перечисленные через запятую различные константы, совместимые с типом выражения.
Выполнение оператора заключается в следующем
— вычисляется значение выражения;
— если полученное значение указано в каком-либо списке констант — выполняется соответствующий оператор 1,2,…;
— если полученное значение не указано ни в одном списке констант — выполняется оператор 0;
— { } необязательная часть оператора.
Пример
Case CHIS of
0 Writeln(‘Ноль’);
1,3,5,7,9 Writeln(‘Нечетное’);
2,4,6,8 Writeln(‘Четное’)
else
Writeln(‘Не цифра’)
end;
1.6 Операторы цикла
Оператор цикла с предусловием

Выполнение оператора заключается в следующем
— пока значение логического выражения истинно — выполняется оператор в теле цикла;
— в случае ложного значения логического выражения осуществляется выход из цикла.
Так как истинность логического выражения проверяется в начале каждой итерации, цикл может не выполниться ни разу.
Пример
X =1;{Y=0.256SinX,
While X<=10 doдля всех X=1..10 с шагом 1}
begin Y =0.256*Sin(X);
X =X+1
end;{два оператора в теле цикла объединены с помощью составного}
Оператор цикла с постусловием

Выполнение оператора заключается в следующем
— если значение логического выражения ложно, то выполняется группа операторов внутри цикла;
— в случае истинного значения логического выражения осуществляется выход из цикла.
Поскольку проверка условия осуществляется в конце цикла, то цикл выполняется хотя бы один раз.
Пример
X =1;{Y=0.256SinX,
Repeatдля всех X=1..10 с шагом 1}
Y =0.256*Sin(X);
X =X+1
until X>10;
Оператор цикла с параметром
Оператор цикла с параметром организует выполнение одного оператора в теле цикла заранее известное число раз. Существуют два варианта оператора.
For I =N to M do <оператор>;
For I =N downto M do <оператор>;
где I — параметр цикла, являющийся ординальной переменной;
N — выражение, определяющее начальное значение параметра цикла;
M — выражение, определяющее конечное значение параметра цикла.
Выполнение оператора заключается в следующем
— пока параметр цикла не больше (в первом варианте) или не меньше (во втором варианте) конечного значения — выполняется очередная итерация;
— в противном случае осуществляется выход из цикла.
Следует отметить, что после выхода из цикла параметр цикла становится неопределенным, за исключением случая, когда выход из цикла был осуществлен с помощью оператора Goto.
Пример
For X =1 to 10 doFor X =10 downto 1 do
Y =0.256*Sin(X);или Y =0.256*Sin(X);
{При необходимости размещения нескольких операторов в теле цикла, их объединяют с помощью составного оператора}
For X =1 to 10 do
begin Y =0.256*Sin(X);
Writeln(X,Y) {вывод таблицы результатов}
end;

2. Процедуры и функции

2.1 Описание функции
В среде Turbo-Pascal имеются две разновидности подпрограмм — процедуры и функции. Структура подпрограммы аналогична структуре программы в целом.
Подпрограмма должна быть описана до того, как она будет использована в основной программе или другой подпрограмме. Все параметры, которые использует подпрограмма, можно разбить на две категории локальные параметры, объявленные внутри подпрограммы и доступные только ей самой, и глобальные — объявленные в основной программе и доступные как основной программе, так и всем ее подпрограммам.
2.2 Формальное описание функции
function <имя функции> (<список формальных параметров>) <тип функции>;
<секция описаний локальных переменных>;
begin <секция операторов>
где <имя функции> — идентификатор, к которому предъявляются те же требования, как к любому идентификатору в среде Turbo-Pascal;
<список формальных параметров> — все параметры в списке указываются вместе со своим типом (одного типа через запятую; различные типы через точку с запятой). Тип параметров в списке может быть любой. Как частный случай, функция может быть без параметров.
<тип функции> — задается обычным способом и может быть любым простым или String..

2.3 Вызов функции
Вызов функции может осуществляться из основной программы или
другой подпрограммы.
< имя переменной> = <имя функции>(<список фактических параметров>);
или в операторе вывода
Write( <имя функции>(<список фактических параметров>));
<список фактических параметров> — представляет собой, перечисленные через запятую значения, которые при обращении заменяют соответствующие формальные параметры в описании функции.
Следует обратить внимание на то, что количество, тип и порядок расположения фактических параметров в обращении к функции обязательно должен совпадать с количеством, типом и порядком расположения формальных параметров в описании функции.
Пример

Как ранее указывалось, тип формальных параметров может быть любым, однако в заголовке подпрограммы нельзя вводить новый тип, так нельзя писать
function Max(A array [1..50] of real) real;
Правильно в основной программе ввести новый тип, а затем использовать его в заголовке подпрограммы
Type MASS = array [1..50] of real;
function Max(A MASS) real;
оператор язык программирование
2.4 Формальное описание процедуры

procedure <имя процедуры>(<список формальных параметров>);
<секция описания локальных переменных>;
begin
<секция операторов>
end;
В отличие от формального описания функции, в заголовке процедуры отсутствует понятие <тип>, так как имя процедуры не является носителем формального результата. Результаты выполнения процедуры могут быть множественны и указываются в списке формальных параметров в качестве параметров-переменных.
В качестве формальных параметров наиболее часто встречаются параметры-значения и параметры-переменные.
Параметры-значения передаются основной программой в подпрограмму через стек в виде их копий и, следовательно, собственный параметр программы подпрограммой изменится не может.
При передаче параметров-переменных в подпрограмму фактически через стек передаются их адреса в порядке, объявленном в заголовке подпрограммы. Следовательно, подпрограмма имеет доступ к этим параметрам и может их изменять, поэтому результаты выполнения процедуры должны указываться в списке формальных параметров именно в качестве параметров-переменных.
Параметр-переменная указывается в заголовке процедуры аналогично параметру-значению, но только перед именем параметра записывается ключевое слово Var.
procedure MaxMin(A MASS; Var Max,Min real);
здесь A — параметр-значение;
Max, Min — параметры-переменные.

2.5 Вызов процедуры

Для вызова процедуры из основной программы или другой подпрограммы используется отдельный оператор следующего вида
<имя процедуры>(<список фактических параметров>);
Требования к списку фактических параметров в процедуре предъявляются те же, что и в подпрограмме-функции.
Пример

ВЫВОДЫ

В процессе выполнения работы мы ознакомились с темами «Основными операторы языка Turbo-Paskal. Процедуры и функции».

ЛИТЕРАТУРА

1. Абрамов С.А., Зима Е.В. Начала программирования на языке Паскаль. — М. Наука, 1987;
2. Довгаль С.И., Литвинов Б.Ю., Сбитнев А.И. Персональные ЭВМ Турбо-Паскаль V7.0, Объектное программирование, Локальные сети. (Учебное пособие).- Киев, «Информсистема сервис», 1993;
3. Епанешников А.М., Епанешников В.А. Программирование в среде Turbo-Pascal 7.0 .- М. , Диалог МИФИ, 1993;
4. Поляков Д.Б., Круглов Н.Ю. Программирование в среде Турбо-Паскаля. — изд.МАИ., М. , 1992;
5. Фаронов В.В. Турбо-Паскаль. Начальный курс – 1 кн. Практика программирования –2 кн. Учебное пособие. — М. «Нолидж»,1997;
6. Эрбс Х.-Э., Штольц О. Введение в программирование на языке Паскаль./Пер. с нем. — М. , Мир, 1989;