Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Вычислить рекурсивно функцию - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти ошибку в коде http://www.cyberforum.ru/cpp-beginners/thread779196.html
Доброго времени суток. Не могу найти ошибку в коде. Задание проще простого, вычеслить функцию. Буду благодарен за любую помощь #include <iostream> using std::count; using std::cin; using...
C++ Слить два линейных списка, сохранив сортировку по возрастанию лучше через стандартные, только начали изучать. Есть 2 лин.списка, где эл-ты по возрастанию, нужно их слить в один, чтобы эл-ты шли по возрастанию. http://www.cyberforum.ru/cpp-beginners/thread779173.html
Вывести все введенные строки. Отсортировать строки. Вывести самую длинную строку C++
Здравствуйте!!! Помогите пожалуйста, не могу разобраться с программой. Ввести с клавиатуры строки, пока не будет введено 5 строк, которые не имеют подстрок "ав" и "12". Вывести все введенные...
C++ Дано число n; вычислить, сколько простых чисел от 2 до n
как решить через стандартные ф-ии?
C++ Таблица Истенности http://www.cyberforum.ru/cpp-beginners/thread779155.html
Собрался писать прогу на С++, но не знаю как лучше сделать! Задание такое: дана формула (заносится с клавиатуры любая формула) и надо вывести таблицу истинности для этой формулы! Как проще можно...
C++ Для заданного натурального пятизначного числа выполнить перестановку его крайних чётных цифр (исправить ошибки) Задача предельно простая и интересная, но в процессе компиляции он у меня выводит постоянно ошибки. Не могли бы вы подсказать, где они находятся и как их исправить? Вроде по логике правильно сделал,... подробнее

Показать сообщение отдельно
abit
264 / 263 / 33
Регистрация: 03.02.2013
Сообщений: 734
05.02.2013, 01:02
вероятнее всего подразумевается что речь идёт о целых числах и 2k говорит, что n - делится на 2, т.е. чётно, а 2k+1 что нечётно...

так же если допустить, что здесь речь идёт о сумме, а не о просто S как переменная (потому что если там не было знака суммы или чего ещё - задача тривиальна и всегда вернёт 1), если речь о сумме, то так:

C++
1
2
3
4
5
6
int myfunc(int x)
{
   if (x==1) return 1;
   else if (x%2==0) return x+myfunc(x/2);
   else return x+myfunc((3*x+1)/2);
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru