|
|
|
§ 2.4. Запись вспомогательных алгоритмов на языке Паскаль Процедуры. Запись вспомогательных алгоритмов на языке ПаскальПроцедура — подпрограмма, имеющая произвольное количество входных и выходных данных. Описание процедуры имеет вид: procedure <имя_процедуры> (<описание параметров-значений>;
В заголовке процедуры после её имени приводится перечень формальных параметров и их типов. Входные параметры, значения которых не изменяются в программе, должны быть параметрами-значениями. Выходные (результирующие) параметры должны быть параметрами-переменными. Для вызова процедуры достаточно указать её имя со списком фактических параметров. В качестве параметров-значений можно указывать имена переменных, константы и выражения. Например, заголовок процедуры вычисления наибольшего общего делителя может быть описан так: procedure nod (a, b: integer; var с: integer); Возможны следующие варианты вызова этой процедуры: nod (36, 15, z) — в качестве параметров-значений использованы константы;
В любом случае между фактическими и формальными параметрами должно быть полное соответствие по количеству, порядку следования и типу. Пример 1. Напишем процедуру для нахождения наибольшего общего делителя двух чисел с помощью алгоритма Евклида. Используем её для нахождения наибольшего общего делителя следующих шести чисел: 16, 32, 40, 64, 80 и 128.
Измените программу так, чтобы с её помощью можно было найти: а) наибольший общий делитель следующих пяти чисел: 12, 24, 30, 48 и 51;
|
|
|