Главная >> Информатика 9 класс. Босова

§ 2.4. Запись вспомогательных алгоритмов на языке Паскаль

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

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

Описание процедуры имеет вид:

    procedure <имя_процедуры> (<описание параметров-значений>;
              var: Сописание параметров-переменных>);
    begin
      <операторы>
    end;

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

Для вызова процедуры достаточно указать её имя со списком фактических параметров. В качестве параметров-значений можно указывать имена переменных, константы и выражения.

Например, заголовок процедуры вычисления наибольшего общего делителя может быть описан так:

    procedure nod (a, b: integer; var с: integer);

Возможны следующие варианты вызова этой процедуры:

    nod (36, 15, z) — в качестве параметров-значений использованы константы;
    nod (х, у, z) — в качестве параметров-значений использованы имена переменных;
    nod (х+у, 15, z) — в качестве параметров-значений использованы выражение и константа;

В любом случае между фактическими и формальными параметрами должно быть полное соответствие по количеству, порядку следования и типу.

Пример 1. Напишем процедуру для нахождения наибольшего общего делителя двух чисел с помощью алгоритма Евклида. Используем её для нахождения наибольшего общего делителя следующих шести чисел: 16, 32, 40, 64, 80 и 128.

Измените программу так, чтобы с её помощью можно было найти:

    а) наибольший общий делитель следующих пяти чисел: 12, 24, 30, 48 и 51;
    б) наибольший общий делитель произвольных десяти целых двузначных чисел.

 

 

???????@Mail.ru