Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
delphi_p1.doc
Скачиваний:
3
Добавлен:
01.05.2025
Размер:
571 Кб
Скачать
☆

Задачи.

90. Найти НОД трёх натуральных чисел. Указание:

НОД(x,y,z)=НОД( НОД(x,y), z ).

91. Даны натуральные числа m и n. Найти такие натуральные числа p и q, не имеющие общих делителей, что

92. Найти первое число Фибоначчи, большее заданного целого числа m (m1).

93. Вычислить S  сумму всех чисел Фибоначчи, которые не превосходят 1000.

94. Дано целое число m (m1). Получить наибольшее целое k , при котором 4k  m.

95. Дано натуральное число n . Получить наименьшее число вида 2r , превосходящее n.

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

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

Процедуры.

Формат описания процедуры:

procedure имя (формальные параметры);

раздел описаний

begin

операторы

end;

Описание процедуры включает заголовок и тело процедуры. Заголовок состоит из зарезервированного слова procedure , идентификатора имя процедуры и списка формальных параметров с указанием типа параметра (список параметров может отсутствовать). Имя процедуры – идентификатор, уникальный в пределах программы. Тело процедуры представляет собой блок, по структуре аналогичный программе.

Рассмотрим пример процедуры, которая вычисляет an , где a и n – это данные целые числа (n0).

procedure degree( a,n:integer; var step:integer);

var i:integer;

begin

step1;

for i1 to n do stepstepa;

end;

Результатом выполнения процедуры может быть не одно значение, а несколько. Рассмотрим пример процедуры, меняющей местами значения двух переменных x и y.

procedure swap(var x, y:integer);

var z:integer;

begin

zx; xy; yz

end;

Функции.

Формат описания функции:

function имя (формальные параметры) : тип результата;

раздел описаний

begin

операторы

end;

Функция состоит из заголовка и тела функции. В отличие от процедуры результатом выполнения функции может быть только одно значение. В теле функции обязательно должен быть хотя бы один оператор присваивания, где в левой части стоит имя стандартной переменной result, а в правой – вычисленное значение функции.

Рассмотрим пример функции, которая вычисляет факториал числа n.

n! 123… n

function fact(n:integer):integer;

var i:integer; f:integer;

begin

f1; for i1 to n do ff  i;

resultf

end;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]