Помощь - Поиск - Пользователи - Календарь
Полная версия: Помогите Рекурсии!
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
nekkit
--------------------------------------------------------------------------------
Вот решить не могу! Надо по данному примеру вот этой программы сделать 2.
Пример:

Program Rekurs;
Var
  N : integer;
  F : Longint;
Function RecFact(N:integer) : LongInt;
Begin
  if N <= 1 
    then
      ReсFact := 1
    else
      ReсFact := N*ReсFact(N-1);
End;
Begin
  writeln('Введите число N > ';
  read(N);
  F := RecFact(N);
  writeln('Для числа ',N,' значение факториала равно ',F);
End.

Не могу сделать их еще надо в рекруссивном и интеративном варианте сделать обе.

Интеративном т.е чтобы постоянно спрашивало
до определенного числа раз.

1) На печать выводится сказка ”О попе и его собаке” определенное число раз. ("У попа была собака, он ее любил. Она съела кусок мяса - он ее убил. В землю закопал, надпись написал ...)


2) Напишите рекурсивный алгоритм нахождения степени числа. ах=ах-1*а, а0=1\


Зарание всем благодарен.
volvo
Цитата
Напишите рекурсивный алгоритм нахождения степени числа
Поиск и еще раз поиск... Во первых есть в FAQ-е, во вторых - есть специальная тема для интересных рекурсивных решений, там тоже выкладывалось...
nekkit
Где в FAQ-е найти не могу?
volvo
FAQ -> Общие вопросы по математике -> Возведение в степень.

Первый способ это что по-твоему? Не рекурсия?
nekkit
А примерно начало хотябы решения показать можно?!
volvo
Какое начало? Тебе дали ссылку на полное решение, что ТЕПЕРЬ не хватает?

Или ты про первое задание?

const story = 
  'У попа была собака, он ее любил. Она съела кусок мяса - он ее убил. В землю закопал, надпись написал ...';

procedure print_story(n: integer);
begin

  if n > 0 then begin
    writeln(story);
    print_story(n - 1);
  end;

end;

begin
  print_story(7); { <-- Печатать 7 раз }
end.

Какое может быть начало? Полная программа занимает 15 строк...
nekkit
вторую как делать я уже понял. А вот первую на половину нехватает вроед 3 строчки?! rolleyes.gif
nekkit
Спасибо. первую допетрил. А вторую не могу со своей данной формулой из FAQ слить.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.