69693

Рекурсія

Лекция

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

Механізм рекурсії одночасно дуже корисний, але і дуже небезпечний. При створенні рекурсивних функцій потрібно бути особливо уважним, щоб уникнути зациклення. Наступна функція викличе зациклення...

Украинкский

2014-10-08

23 KB

0 чел.

Тема 21: Рекурсія

Рекурсією називається виклик функції самої себе. Такий виклик називається рекурсивним. Рекурсія буває пряма і непряма. Розглянемо приклад прямої рекурсії (див. лістинг 8.7).

Лістинг 8.7. Пряма рекурсія

<?

function   fact ($x)

{

if    ($x==0)    return   1;

else   return   $x*fact($x-l);

}

echo   fact (7);

?>

Як ви вже встигли здогадатися, функція fact () обчислює факторіал x!. Функція fact () у своєму тілі викликає саму себе — це і є пряма рекурсія. Непряма рекурсія виникає, коли перша функція викликає другу, а друга — першу.

Механізм рекурсії одночасно дуже корисний, але і дуже небезпечний. При створенні рекурсивних функцій потрібно бути особливо уважним, щоб уникнути зациклення. Наступна функція викличе зациклення (див. лістинг 8.8).

Листинг8.8. Некорректноєіспользованіє рекурсії

function   fact($x)

{

if    ($x==0)    return   1;

else   return   $x*fact($x);


 

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

28676. Политика «военного коммунизма», ее сущность, содержание. Продразверстка. Всеобщая трудовая повинность 13.36 KB
  й чрезвычайных мер управления эккой харных для периода Гражданской войны. Поскольку жесткая система контроля и распредя основывалась на уравнительном распреди для трудящихся она получила название коммунизма а поскольку система возникла как чрезвычайная мера в период войны название военного коммунизма. С окончанием Гражданской войны он был отменен.
28677. Перестройка государственного аппарата в годы гражданской войны и иностранной военной интервенции. Совет рабочей и крестьянской обороны 13.45 KB
  В перерывах между съездами Советов высшим органом власти являлся ВЦИК. был установлен сессионный порядок работы ВЦИК. С сессионным порядком работы ВЦИК изменился и харер деятти его Президиума: он был наделен правом руководить заседаниями ВЦИК наблюдать за выпем его постановлений назначать наркомов инструктировать центральные и местные органы отменять постановления СНК и др. Президиум ВЦИК был наделен законодательными полномочиями.
28678. Военно-политический и хозяйственный союз республик в годы гражданской войны -и иностранной военной интервенции (1918- 1920 гг.) 12.25 KB
  Военнополитический и хозяйственный союз республик в годы гражданской войны и иностранной военной интервенции 1918 1920 гг. ознаменовался рождением Российской Советской Федеративной Социалистической Республики. На первом этапе на территории бывшей царской России возникли автономные республики территориальные автономии с учетом национального состава населения появились суверенные Советские республики. Второй этап объединительного движения народов советских республик связан с периодом гражданской войны и иностранной военной интервенции...
28679. Переход Советского государства к новой экономической политике, ее сущность Совершенствование государственного аппарата и законодательства в период перехода к НЭПу 13.46 KB
  Переход Советского государства к новой экономической политике ее сущность Совершенствование государственного аппарата и законодательства в период перехода к НЭПу. X съезд Коммунистической партии принял решение о переходе от продразверстки к продналогу и о переходе к новой экономической политике нэпу. Переход к новой эккой политике означал отказ от методов военного коммунизма. предполагалось начать выпуск новой валюты.
28680. Судебная реформа 1922 г. и создание единой судебной системы. Упразднение чрезвычайных судебных органов. Создание прокуратуры и адвокатуры 13.61 KB
  ВЦИК утвердил Положение о судоустройстве РСФСР положившее начало новой судебной реформе. Положение вводилось в действие на всей терории РСФСР с 1 января 1923 г. Данным нормативным актом создавалась единая судебная система: народный суд в составе постоянного народного судьи; народный суд в составе постоянного народного судьи и 2ух народных заседателей; губернский суд; Верховный суд РСФСР и его коллегии. Параллельно с единой системой народных судов РСФСР действовали специальные суды: военные трибуналы военнотранспортные трибуналы...
28681. Развитие законодательства и его кодификация в 1922 г. Кодексы законов о труде, земле, гражданский и уголовный кодексы 1922 г. 14.06 KB
  ГК РСФСР состоял из 4 разделов: общ. ЗК РСФСР состоял из Оснх положений и 3 частей: о трудовом землепользи о городских землях и госных земельных имвах о землеустройстве и переселении. Кодекс закрепил отмену частной собствти на землю недра воды и леса в пределах РСФСР. КЗоТ РСФСР сост.
28682. Национально-государственное размежевание в Средней Азии и образование новых советских социалистических республик 12.23 KB
  Первыми субъектами СССР были четыре союзные республики: РСФСР УССР БССР и ЗСФСР. В дальнейшем СССР пополнялся новыми субъектами. На первом этапе развития Союза ССР происходило национальногосударственное размежевание в Средней Азии на территории Туркестанской АССР входившей в состав РСФСР и двух самостоятельных государств Хорезмской и Бухарской народных советских республик. были приняты декларации об образовании Узбекской ССР и Туркменской ССР.
28683. Образование СССР. Договор и Декларация об образовании СССР, их правовые основы 13.48 KB
  Образование СССР. Договор и Декларация об образовании СССР их правовые основы. Образование СССР определяется след. предпосылкой образования СССР было существование в республиках аналогичного режима диктатуры пролетариата.
28684. Разработка и принятие Конституции СССР 1924 г. Ее основные положения 12.45 KB
  Разработка и принятие Конституции СССР 1924 г. Конституция СССР 1924г. Она была принята ЦИК СССР 6 июля 1923 г. II Всесоюзным съездом Советов СССР.