суббота, 9 февраля 2013 г.

примеры рекурсивных процедур в паскале авс

Пример рекурсивного алгоритма

Алгоритм, который является своей собственной частью, называется рекурсивным. Часто в основе такого алгоритма лежит рекурсивное определение.

Программист разрабатывает программу, сводя исходную задачу к более простым. Среди этих задач может оказаться и первоначальная, но в упрощенной форме. Например, для вычисления F( N) может понадобиться вычислить F( N-1). Иными словами, частью алгоритма вычисления функции будет вычисление этой же функции.

   Posledov (first);

   Write ( введите первое значение ); readln (first);

   If odd(i) then posledov(3*i+1) else posledov(i div 2);

   If i=1 then exit;

   Writeln (i);

Пример программы с использованием рекурсии

Применение рекурсии позволило решить задачу без использования циклов, как в основной программе, так и в процедуре.

Математически конечность последовательности независимо от начального i не доказана, но на практике последовательность останавливается всегда.

Построим последовательность чисел следующим образом: возьмем целое число i>1. Следующий член последовательности равен i/2, если i четное, и 3 i+1, если i нечетное. Если i=1, то последовательность останавливается.

Рассмотрим математическую головоломку из книги Ж. Арсака «Программирование игр и головоломок».

Для того чтобы такое обращение не было бесконечным, в тексте подпрограммы должно быть условие, по достижению которого дальнейшее обращение к подпрограмме не происходит.

Подпрограммы в Паскале могут обращаться сами к себе. Такое обращение называется рекурсией.

Рекурсия Pascal-Паскаль

Программирование. Рекурсия Pascal-Паскаль

Скачено бесплатно: 18584

Программирование. Рекурсия Pascal-Паскаль

Программирование. Рекурсия Pascal-Паскаль

Комментариев нет:

Отправить комментарий