Помощь - Поиск - Пользователи - Календарь
Полная версия: Помогите Рекурсии!
Форум «Всё о Паскале» > 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 слить.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.