36298

Понятие рекурсии. Прямая и косвенная рекурсия

Доклад

Информатика, кибернетика и программирование

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

Русский

2013-09-21

23.5 KB

19 чел.

Понятие рекурсии. Прямая и косвенная рекурсия.

Рекурсия – это такой способ организации программы, когда процедура или функция  в ходе выполнения составляющих ее операторов обращается сама к себе.

Примером программы с использованием рекурсии может быть программа вычисления факториала числа. Факториал может быть определен рекурсивно:

n!= (n-1)!*n,   где n = 1, 2, 3,…

Пример. Программа, которая запрашивает ввод числа и затем выводит на экран значение факториала от него.

Var     k: integer;

Function  fakt (n: integer):longint;

 Begin

If n=1 then  fakt :=1

 Else fakt :=  fakt (n-1) *n;

  End;

 Begin

Writeln (‘ введите число ‘);

Readln (k);

Writeln (k, ‘ ! =  ‘,fakt(k));

  End.

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

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

При организации рекурсивной процедуры следует выполнять рекурсивный вызов по условию, которое на каком-то уровне рекурсии станет ложным.

Рекурсия может быть прямой, когда функция вызывает сама себя (А А), и косвенной, когда функция А вызывает функцию В, которая в свою очередь вызывает функцию А (АВА).

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


 

А также другие работы, которые могут Вас заинтересовать

25252. Суперечка між універсалістами та комунітаристами в сучасній політичній філософії 23.5 KB
  Якщо ж переходити до сучасності то Роулз намагався реконструювати кантіанські принципи де є пріоритет права над благом. Тобто Роулз та його прибічники ліберали намагаються відшукати загальний консенсус та розмірковують над зародками світового громадянського правового ладу. Метою Роулза є втілити принципи всезагальної справедливості у реальне життя та зробити суспільство стабільним. Роулз у Теорії справедливості€ навіть пропонує у вихідній позиції представити що не знаєте свого віку статі соціального походження.
25253. Соціальна філософія Франкфуртської школи 27 KB
  Подібну думки висловлює і Маркузе в роботі Одномірна людина. Одномірна людина керується такою ж бідною та плоскою філософією. На думку Еріха Фрома людина народжується тоді коли він розриває первісні звязки з природою що характеризують тваринне існування. Розірвавши їх людина стає одинокою що змушує її обрати 1 із 2х можливих шляхів: скоритися іншому або скорити іншого.
25254. Культура як об’єкт і предмет філософського осмислення 29.5 KB
  В той же час формується і протилежний підхід до питання про вплив культури на людське життя. Виділяють наступні підходи до вивчення історії людської культури: Формаційний Маркс Енгельс: Історія розглядається як зміна супільноекономічних формацій рухомою силою якої вважається класова боротьба. Кожній формації властивий власний тип культури який еволюціонує в своєму розвитку від формації до формації. Процес розвиток культури наділяється прогресивним характером який підпорядковується єдиній логіці історичного процесу утвердження...
25255. Моральні цінності і основні тенденції сучасної культури 27 KB
  Біоетичні проблеми: вторгнення в природу людини пересадка органів клонування €œсуррогатне материнство€ штучне запліднення зміна статі евтаназія виявляє неможливість узгодження моральної і медицинської позицій. Таким чином під сучасними €œгуманістичними тенденціями€ приховуються цілком протилежні процеси егоїстичне і руйнівне ставлення людини до природи як до навколишньої так і до власної; гіпертрафія значення індивідуальної людини що нерідко приховує за собою інтереси конкретних соціальних груп.
25256. Здобутки сучасної науки і проблеми прикладної етики 34 KB
  Здобутки сучасної науки і проблеми прикладної етики Прикладка етика сфера знання і поведінки предметом якої є практичні моральні проблеми які мають междисциплінарний і відкритий характер. біоетики екологічної етики етики господарювання політичної етики етики науки і ін. представляеть собою нову багатоманітну сферу знання і суспільної практики яка виникає на межі етики і ін. є додатком етичної теорії до практики і має свої витоки в античності; це новий варіант професійної етики; сукупність особливого роду практичних моральних питань...
25257. Специфічні риси античної філософської парадигми 30 KB
  Основні досократичні школи: Мілетська школа Фалес Анаксімандр Анаксімен Вчення Геракліта Ефеського Атомізм Демокріта Піфагорійський союз Елейська школа Ксенофан Парменід Зенон Софісти Сократичні школи: мегарська Евклід синтезували вчення Парменіда про буття з вищим поняттям сократівської етики поняттям добра кінічна основою щастя вважали нехтування суспільними нормами циніки кіренайська гедонізм Платон учень Сократа засновник Академії: вчення про ідеї як досконалі речі€ теорія пізнання знання як пригадування...
25258. Монізм-плюралізм. Суть „елейської кризи” в античній філософії 27.5 KB
  буття єдине істине нерухоме умоглядне розум та умовиводи. Існує лише буття небуття не існує тотожність мислення і буття. Оскільки небуття не можливо помислити то його не має Пізнання засобами органів відчуттів не достовірне. Апорії Зенона Ахілл і черепаха€ Стріла€: логічно неможливе мислення множинності речей припущення руху приводить до суперечностей Опоненти олеатів сперечалися з постулатами про єдність буття і його нерухомість апелювали до чуттєвоконкретної реальності що є багатоманітною і мінливою.
25259. Суть Сократовських тез 22.5 KB
  Осн заслуга в тому що діалог був осн методом знаходження істини. Даний вислів був переосмислений Сократом і означав 1 відмову від космологічної спекуляції досократиків 2 кореляцію осн постулата інтелектуальної етики Сократа добродетелб есть знание який передбач самопізнання пізнання своєї моральної сутності та її наступна реалізація пізнай хто ти єсть і стань ним шляхом досягнення щастя.
25260. Проблема співвідношення філософії та релігії 67.5 KB
  Спільне філософії і науки: конкретний предмет дослідження; обґрунтовуються особливими способами доказів філософія верифікація само наукове знання інколи служить доказом філософського принципу; обидва знання узагальнення ідей але ступінь узагальнення різний філософію часто називають метатеорією теорія теорії; ціль збагачення досвіду людини; метод абстракції. Відмінності: наука вивчає лише відносне а філософія ще й абсолютне; наукове мислення інтелектуальне а філософське розумове оскільки про відносне можна знати лише...