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

Рекурсивное вычисление функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти в последовательности все слова, из которых могла бы получиться другая последовательность http://www.cyberforum.ru/cpp-beginners/thread91175.html
Добрый вечер, нужна помощь в решении задачи. Даны символы а1....а10, натуральное число n, символы s1,...., sn. Будем рассматривать слова, входящие в последовательность s1,...., sn, считая, что среди символов а1....а10 нет пробелов, и поэтому последовательность а1....а10 может рассматриваться как одно слово, в словах могут встретиться ошибки: -заменена одна буква. Требуется найти в s1,....,...
C++ посчитать интеграл...найти ошибку в программе Написал прогу, работает, но препод сказал что неправильно, в чём ошибка-то ? Собственно задание: написать программу, которая считает интеграл 1-x*x на интервале методом Монте-Карло (на лекциях этой темы не было). #include <stdlib.h> #include <stdio.h> #include <time.h> double func(double x) { return 1-x*x; http://www.cyberforum.ru/cpp-beginners/thread91157.html
C++ Ошибка при использовании delete
И снова здравствуйте! Пишу раз третий.Я уже готов убицца ап сцену изза этого delete.Я не понимаю что не так делаю: class CMenu { char* Title; char* End; public: CMenu(char*, char* ); ~CMenu();
C++ массив
Задано два вектора A=(a1,a2,a3,a4) и B=(b1,b2,b3,b4,b5), где a1=0.1; a2=a1+2.1; a3=a1-0.8; a4=a2-0.8 b1=a1*a2; b2=a2*a3; b3=a1*a3; b4=5*a1; b5=b4-b2 найти Q=∑_(i=1)^4▒〖(a_i 〗 ∏_(j=1)^5▒b_j )
C++ наибольший общий делитель http://www.cyberforum.ru/cpp-beginners/thread91106.html
Написать программу, которая рекурсивно вычисляет (наибольший общий делитель) НОД (a,b), где целые числа a и b вводятся пользователем
C++ Натуральное число N Люди помогите решить эту задачу на "СИ" 2. Дано натуральное число N. Вычислить произведение первых N сомножителей 1/2 * 3/4 * 5/6 *… подробнее

Показать сообщение отдельно
logiC
16 / 16 / 2
Регистрация: 06.06.2009
Сообщений: 50
30.01.2010, 23:12
Считаю, что задача имеет смысл только если n принадлежит множеству целых чисел.
Так что работаем только с int'ами:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int f(int x)
{
      if(x == 0)
           return 0;
      if(x == 1)
            return 1;//условие выхода из рекурсии
      if(x%2 == 0) //проверяем на четность\нечетность
            //если четное число
            return f(x/2);
      else
      //число нечетное
      {
            int tmp = (x-1)/2;
            int ret = f(tmp)+f(tmp+1);
            return ret;
      } 
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru