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

Вычислить глубину рекурсии и итеративного способа вычисления - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сумма в строках двумерного массива http://www.cyberforum.ru/cpp-beginners/thread545726.html
Задача такая: в массив записываются данные о продажах за каждый месяц за три года. Нужно ввести эти данные с клавиатуры, сохраняя их в двумерном массиве (3*12) и вывести количество проданных (скажем книг - не важно чего) за каждый год. С клавиатуры ввод работает, а вот с подсчетом за год проблемы.. Подскажите, пожалуйста, что не так.. #include "stdafx.h" #include <iostream> using namespace...
C++ Как преобразовать строку цифр в число? Как преобразовать строку цифр в число? http://www.cyberforum.ru/cpp-beginners/thread545706.html
Операции над целыми множествами. C++
Должно быть: ввод, вывод, копирование, сложение множеств (+), пересечение множеств (*), разность (-), добавление в множество, проверка вхождения в множество. (Элементы хранятся в отсортированном порядке; поиск - двоичный) Может быть кто-нибудь делал?
Помогите сделать программу C++
помогите пожалуйста придумать программку на с++ по теме "оптимизация циклов"
C++ Не компилируется: что не так с конструктором структуры? http://www.cyberforum.ru/cpp-beginners/thread545676.html
Есть некий класс - односвязный линейный список, с элементами типа TElem. Шаблонность здесь только чтобы хранить различные объекты в списке и собственно эта же шаблонность и приводит к ошибке при компиляции. template <class T> CSparseArray { CSparseArray() :size(0) { m_First= NULL;
C++ Определить двухмерную матрицу целочисленных элементов int максимальным размером 20*20 1.Определить двухмерную матрицу целочисленных элементов int максимальным размером 20*20. 2.В диалоге запросить размер обрабатываемой матрицы или завершение работы программы. 3.Ввести матрицу запрошенного размера с клавиатуры. 4 Задание. Запросить строку и в ней отсортировать элементы по возрастанию, методом пузырьковой сортировки. (или 4. запросить правая/левая диагональ вверх вниз по... подробнее

Показать сообщение отдельно
diaryofsummer
1 / 1 / 0
Регистрация: 19.02.2012
Сообщений: 31
12.04.2012, 01:54     Вычислить глубину рекурсии и итеративного способа вычисления
помогите пожалуйста вычислить глубину рекурсии и итеративного способа вычисления

программа вычисляет элементы последовательности:
a(0)=1;
a(n)=a(n div 2)+a(n div 3), n>1;

для итеративного способа, я так понял, глубина равна n,
а как ее вычислить для рекурсии?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include "stdafx.h"
#include <conio.h>
#include <iostream>
using namespace std;
 
int formula(int n)
{
    if (n<0)              
    {
        cout<<"error";
        getch();
        exit(1);        
    } 
    if (n==0) return 1;  
    return formula(n/2)+formula(n/3);    
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    int n;
    int i;
    cout<<"n = ";
    cin>>n;
    cout<<"recursivno: result = "<<formula(n)<<"\n";         
           
// здесь начинается итеративный способ 
    int *results = new int[n+1];                       
    results[0] = 1; 
    for (int i=1; i<n+1; i++) 
        results[i]=results[i/2]+results[i/3]; 
    cout <<"iterativno: result = "<<results[n]<<endl;   
    delete [] results;
           getch();
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 08:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru