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

Рекурсия, нужно отладить код - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Пересановка букв в слове http://www.cyberforum.ru/cpp-beginners/thread1194799.html
Здравствуйте. Помогите пожалуйста! Вопрос жизни и смерти! Мне нужно составить программу на С++. Суть в том что нужно переставлять 4 буквы, которые идет по списку подряд английского алфавита, в 16 символов, которые изначально ввел пользователь. Карочее суть такая: 1) Пользователь вводит строку из 16 символов: 1234567890123456 2) Далее программа смотрит 4 первых символа и заменяет их по алфавиту....
C++ Ошибка в адресации DLL в функцию dll передаю указатель на массив это непосредственный вызов функции virtual void __fastcall Click(void){ float *amplitud_fl; HINSTANCE dllHandle; typedef void (_import FType(char *,int *,unsigned long *,unsigned long *,float *,TForm *)); FType *dll_funkcia; dllHandle = LoadLibrary(put_k_dll.c_str()); if (dllHandle) dll_funkcia = (FType... http://www.cyberforum.ru/cpp-beginners/thread1194795.html
Построение контура в графе C++
Здравствуйте, имею задание: На плоскости заданы координаты N элементов, являющихся выводами печатной платы. Некоторые элементы связаны между собой. Требуется выбрать начальный элемент для построения контура (пути, не содержащего циклов) максимальной длины. Контур строится по следующему правилу: из всех возможных элементов, связанных с данным, в контур включается ближайший элемент. Граф...
C++ Приведите схему распределения памяти для объединения un2 и присвойте каждому элементу объединения максимальное
union UN2{int Lg; struct{unsigned b1:2; unsigned b2:3; unsigned b3:5; unsigned b4:6;}bit; }un2;
C++ Ассоциативный массив http://www.cyberforum.ru/cpp-beginners/thread1194783.html
Добрый день. Есть массив map<char,vector<bool> > table; Как пройтись по этому массиву итератором, чтобы вывести содержимое на экран? Я делаю так: map<char,vector<bool> >::iterator iter; for(iter=table.begin(), iter++;iter!=table.end(); iter++) { cout << iter->first << ":" << iter->second <<endl; } Но second выводить не хочет. Наверное нужен второй итератор.
C++ Три точки заданы координатами. Определить, какая из них расположена ближе к началу координат помогите написать программу на языке си, Три точки заданы координатами. Определить, какая из них расположена ближе к началу координат. нужно очень срочно подробнее

Показать сообщение отдельно
ArtesN
0 / 0 / 0
Регистрация: 25.12.2013
Сообщений: 23
31.05.2014, 18:37     Рекурсия, нужно отладить код
Всем привет! Помогите, написал рекурсию, код впринципе рабочий, вот только мне не нравится как он работает. Может кто знает как сделать его более понятным (именно в выводе информации на экран). Заранее спасибо!
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#include "stdafx.h"
#include "locale.h"
#include "conio.h"
#include "math.h"
#include <iostream>
 
using namespace std;
 
double algP(int N, float& x);
int stepen(int& i, float& x);
double algS(int N, int S, float& x, int& i);
 
int main()
{setlocale (LC_ALL, "RUS");
 
    int N=0, S=0, i=0;
    float x;
 
    cout << "Введите N: ";
    cin >> N;
 
    cout << "\nВведите x: " ;
    cin >> x;
 
    cout << algP(N, x) << endl;
 
 
    cout << algS(N,S,x,i) << endl;
 
    getch();
 
    return 0;
}
 
double algP(int N, float& x)
{
    double P=1;
    int i=N;
    P=x-i;
 
cout << "\nПроизведение: " << P;    
 
    if (N==1) return P;
 
    else return P*algP(N-1,x);
 
}
 
 
int stepen(int& i, float& x)
{
  
 
        
        int   rezult=1;
 
        cout<< endl<< "Введите стень числа: ";
        cin>>i;
        for(int k=0; k<i; k++)
                rezult *=x;
        cout<< endl<< "Результата возведения в степень "<<i<< " числа "<< x << " = "<<rezult;
 
         return 1;    
 
}
 
 
double algS(int N, int S, float& x, int& i)
{
    
 
    for (int k=0; k<=N; k++)
    {
         S+=(1/stepen( i, x));
    }
 
    cout << "\nСумма: "  << S;
 
    if (N==1) return S;
 
    else return algS(N-1,S-1,x,i);
}
Миниатюры
Рекурсия, нужно отладить код  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru