Система программирования Турбо Паскаль. Воробьева А.П - 47 стр.

UptoLike

Составители: 

95
Program <имя основной программы>;
Type {Раздел типов}
………….
Var {Описание переменных основной программы}
………….
Раздел описаний подпрограмм
Begin {начало основной программы}
…………
End. {конец основной программы}
В системе Турбо Паскаль различают два вида подпрограмм:
процедуры и функции. В отдельных программах могут отсутст-
вовать либо процедуры, либо функции.
8.2. Процедуры
Любая процедура состоит из заголовка и тела процедуры. Те-
ло процедуры оформляется по тем же правилам, что и тело ос-
новной программы, т.е. состоит из раздела описания переменных
и раздела операторов. Однако заканчивается тело процедуры точ-
кой с запятой.
Общий вид описания процедуры
Procedure <имя>(<список формальных параметров>);
var {Раздел описания переменных процедуры}
………….
begin {Раздел операторов процедуры}
………….
end;
Список формальных параметров служит для связи процедуры
с основной программой. В списке перечисляются входные и вы-
ходные параметры с указанием их типов. Входные параметры яв-
ляются исходными данными для процедуры, а выходные пара-
метры определяют результаты вычислений процедуры, которые
передаются в основную программу.
На языке Турбо Паскаль допускается запись заголовка про
-
цедуры без списка параметров.
96
Обращение к процедуре
Чтобы выполнить процедуру, в нужной точке основной про-
граммы необходимо записать
оператор вызова процедуры.
Общий вид записи оператора вызова процедуры
<имя процедуры>(<список фактических параметров>)
;
При выполнении процедуры фактические параметры заме-
няют формальные параметры. В качестве фактических парамет-
ров могут быть константы, переменные, функции или выражения.
Глобальные и локальные переменные
Переменные, описанные в основной программе, являются
глобальными. Такие переменные можно использовать в любой
точке программы, в том числе и в процедуре.
Локальные переменные определяются в разделе описания
var внутри процедуры. Они имеют смысл только в процедуре и
недоступны основной программе.
Пример программы с процедурой
Вычислить значение:
7
55
2a
aa
Z
+
= , где aзаданное вещест-
венное число.
Введем обозначения:
7
5
55
3;
1
2;1 ar
a
arar =
===
.
В этой задаче требуется многократно реализовать алгоритм
возведения в целую степень. Целесообразно использовать проце-
дуру, в которой данный алгоритм можно формально описать как
алгоритм накопления произведения.
=
===
n
i
n
n
xxxxxxP
1
раз
4434421
K
,
где iномер шага вычисления (умножения);
n число шагов вычислений.
При описании процедуры надо с помощью списков парамет-
ров (формальных и фактических) связать формальный параметр x
с основанием степени, параметр nс показателем, а результат
       Program <имя основной программы>;                                           Обращение к процедуре
       Type {Раздел типов}
                                                                     Чтобы выполнить процедуру, в нужной точке основной про-
           ………….
                                                                 граммы необходимо записать оператор вызова процедуры.
       Var   {Описание переменных основной программы}
                                                                 Общий вид записи оператора вызова процедуры
           ………….
       Раздел описаний подпрограмм                                  <имя процедуры>(<список фактических параметров>);
                                                                     При выполнении процедуры фактические параметры заме-
       Begin {начало основной программы}                         няют формальные параметры. В качестве фактических парамет-
           …………                                                  ров могут быть константы, переменные, функции или выражения.
       End.     {конец основной программы}
                                                                              Глобальные и локальные переменные
    В системе Турбо Паскаль различают два вида подпрограмм:          Переменные, описанные в основной программе, являются
процедуры и функции. В отдельных программах могут отсутст-       глобальными. Такие переменные можно использовать в любой
вовать либо процедуры, либо функции.                             точке программы, в том числе и в процедуре.
                      8.2. Процедуры                                 Локальные переменные определяются в разделе описания
                                                                 var внутри процедуры. Они имеют смысл только в процедуре и
    Любая процедура состоит из заголовка и тела процедуры. Те-   недоступны основной программе.
ло процедуры оформляется по тем же правилам, что и тело ос-
                                                                                Пример программы с процедурой
новной программы, т.е. состоит из раздела описания переменных
и раздела операторов. Однако заканчивается тело процедуры точ-                                   a 5 + a −5
                                                                       Вычислить значение: Z =                 , где a – заданное вещест-
кой с запятой.                                                                                     2a 7
                Общий вид описания процедуры                     венное число.
    Procedure <имя>(<список формальных параметров>);                 Введем обозначения:
      var {Раздел описания переменных процедуры}                                                          ⎛1⎞
                                                                                                                5
         ………….                                                                    r1 = a 5 ; r 2 = a −5 = ⎜ ⎟ ; r 3 = a 7 .
      begin    {Раздел операторов процедуры}                                                              ⎝a⎠
         ………….                                                       В этой задаче требуется многократно реализовать алгоритм
      end;                                                       возведения в целую степень. Целесообразно использовать проце-
                                                                 дуру, в которой данный алгоритм можно формально описать как
    Список формальных параметров служит для связи процедуры      алгоритм накопления произведения.
с основной программой. В списке перечисляются входные и вы-                                                          n
ходные параметры с указанием их типов. Входные параметры яв-
ляются исходными данными для процедуры, а выходные пара-
                                                                                     P = xn = 1
                                                                                              x ⋅4⋅2
                                                                                                 x4x ⋅4
                                                                                                      K4⋅x=
                                                                                                        3
                                                                                                       n раз
                                                                                                                    ∏x,
                                                                                                                    i =1
метры определяют результаты вычислений процедуры, которые
                                                                 где   i – номер шага вычисления (умножения);
передаются в основную программу.
                                                                       n – число шагов вычислений.
    На языке Турбо Паскаль допускается запись заголовка про-
                                                                     При описании процедуры надо с помощью списков парамет-
цедуры без списка параметров.
                                                                 ров (формальных и фактических) связать формальный параметр x
                                                                 с основанием степени, параметр n – с показателем, а результат
                              95                                                                  96