0 / 0 / 0
Регистрация: 10.08.2018
Сообщений: 5
1

Рекурсивный алгоритм:

01.11.2019, 22:16. Показов 660. Ответов 5
Метки нет (Все метки)

Сколько символов "звездочка" будет напечатано на экране при выполнении вызова F(6)?
Pascal
1
2
3
4
5
6
7
8
9
10
 procedure F(n: integer);
  begin
   writeln('*');
   if n > 0 then begin
     F(n-3);
     F(n-2);
     F(n div 2);
     F(n div 2);
   end
  end;
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.11.2019, 22:16
Ответы с готовыми решениями:

Разработать рекурсивный алгоритм: f(n)=1/(n+5)!
Напишите плизз весь код программки и модуля)) Разработать рекурсивный алгоритм и программу...

Необходимо разработать рекурсивный алгоритм.
Разработать рекурсивный алгоритм и программу решения задачи, в которой вычислить : f(n)=(1+n!)/n!....

Рекурсивный алгоритм поиска перестановок
Реализуйте рекурсивный алгоритм поиска перестановок

Кол-во делителей числа(рекурсивный алгоритм)
Подскажите хотя бы на словах как выглядит рекурсивный алгоритм поиска количества делителей числа

5
4876 / 2503 / 2288
Регистрация: 10.12.2014
Сообщений: 9,637
02.11.2019, 14:20 2
Джейн Хоппер, ну, дык, запустите и проверьте!
Что мешает?
0
Платежеспособный зверь
8767 / 4198 / 1609
Регистрация: 28.10.2009
Сообщений: 11,328
02.11.2019, 15:16 3
Джейн Хоппер, JuriiMW, всё дело в том, что эта задача (из ЕГЭ по информатике) не на программирование, а на умение детально разбираться в механизме рекурсивного алгоритма. И место ей не здесь, а в разделе "Информатика". Решается она просто: надо пройти по этому алгоритму, разобраться, что происходит и посчитать звёздочки.
Ответ 55.
0
4876 / 2503 / 2288
Регистрация: 10.12.2014
Сообщений: 9,637
02.11.2019, 15:41 4
кот Бегемот, ответ: 97

f(6) = 1 + f(3) + f(4) + f(3) + f(3) = 1 + 3*f(3) + f(4)
f(4) = 1 + f(1) + f(2) + f(2) + f(2) = 1 + f(1) + 3*f(2)
f(3) = 1 + f(0) + f(1) + f(1) + f(1) = 1 + f(0) + 3*f(1)
f(2) = 1 + f(-1) + f(0) + f(1) + f(1) = 1 + f(-1) + f(0) + 2*f(1)
f(1) = 1 + f(-2) + f(-1) + f(0) + f(0) = 1 + f(-2) + f(-1) + 2*f(0)
f(0) = 1
f(-1) = 1
f(-2) = 1

f(1) = 1 + 1 + 1 + 2 = 5
f(2) = 1 + 1 + 1 + 2*5 = 13
f(3) = 1 + 1 + 3*5 = 17
f(4) = 1 + 5 + 3*13 = 6 + 39 = 45
f(5) = 1 + 3*17 + 45 = 46 + 51 = 97
0
3401 / 1820 / 489
Регистрация: 28.02.2015
Сообщений: 3,699
02.11.2019, 15:50 5
Цитата Сообщение от кот Бегемот Посмотреть сообщение
Ответ 55.
Ответ = 97 раз будет вызвана F и напечатана звездочка, при любых N.
6* 3* 0* 1* -2* -1* 0* 0* 1* -2*
-1* 0* 0* 1* -2* -1* 0* 0* 4* 1*
-2* -1* 0* 0* 2* -1* 0* 1* -2* -1*
0* 0* 1* -2* -1* 0* 0* 2* -1* 0*
1* -2* -1* 0* 0* 1* -2* -1* 0* 0*
2* -1* 0* 1* -2* -1* 0* 0* 1* -2*
-1* 0* 0* 3* 0* 1* -2* -1* 0* 0*
1* -2* -1* 0* 0* 1* -2* -1* 0* 0*
3* 0* 1* -2* -1* 0* 0* 1* -2* -1*
0* 0* 1* -2* -1* 0* 0*
F = 97
N>0= 24
0
Платежеспособный зверь
8767 / 4198 / 1609
Регистрация: 28.10.2009
Сообщений: 11,328
02.11.2019, 16:54 6
JuriiMW, Constantin Cat, Вы совершенно правы, ответ 97. Не ту задачу делал.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.11.2019, 16:54
Помогаю со студенческими работами здесь

Разработать рекурсивный алгоритм и программу решения задачи
Разработать рекурсивный алгоритм и программу решения задачи, в которой вычислить: f(n)=1/(n+1)!....

Составить рекурсивный алгоритм нахождения N-го числа Фибоначчи
Составить рекурсивный алгоритм нахождения N-го числа Фибоначчи: 0,1, 1,2,3,5,8.. то есть каждое...

Составить рекурсивный алгоритм вычисления суммы элементов массива
Пожалуйста помогите составить алгоритм вычисления суммы элементов массива

Линейный алгоритм, Алгоритм с ветвлениями, Циклический алгоритм Линейный алгоритм
Линейный алгоритм, Алгоритм с ветвлениями, Циклический алгоритм Линейный алгоритм 1. Объясни, что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru