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

Ошибка при рекурсивном вызове - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача с тимуса http://www.cyberforum.ru/cpp-beginners/thread620476.html
Вот задача с тимуса, возникли с ней проблемы.Я знаю, что на форуме уже есть решение, но всё-таки хотелось бы узнать ошибку в своём кода. Пока Федя писал условие для задачи «Летопись GOV», ему...
C++ Треугольники из спичек Профессор Самоделкин, известный Вам по задаче "Спичечная модель", решил вновь проявить свои умственные способности. Он начал складывать треугольники со спичек. Какое минимальное количество... http://www.cyberforum.ru/cpp-beginners/thread620474.html
C++ Не могу понять, что делает "%="
Не могу понять, что делает "%=". Вот написал не большую програмку, но так что то и не втыкаю. #include "stdafx.h" #include <iostream> using namespace std; int main() { int a = 30, b = 10;...
cpp-netlib C++
я не понимаю как использовать и подключать эту библеотеку(взять её можно тут http://cpp-netlib.github.com/latest/index.html ) на сколько я понимаю сначало нужно подключить собрание библеотек Boots а...
C++ Задача на подсчет http://www.cyberforum.ru/cpp-beginners/thread620450.html
Дан текстовый файл.подсчитать сколько в нем символов "*",".",":"
C++ Вычисление значения функции Функция f(x)=(x^2-1)/x; Вычислить значение функции f(x), меняющегося в интервале от -5 до 7, с шагом 0,5.Найти минимум(min) значениии и сумму значении отрицательных чисел. Решить задачу, с помощью... подробнее

Показать сообщение отдельно
Dobbos
1 / 1 / 0
Регистрация: 01.03.2012
Сообщений: 16

Ошибка при рекурсивном вызове - C++

07.07.2012, 12:35. Просмотров 366. Ответов 4
Метки (Все метки)

На третьем вызове функции вылазит ошибка об отсутсвии инциализации переменой j, дебаг говорит, что после второго захода в функци j внезапно становится равно незивестному какому-то числу. Как исправить?
"printf("\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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <conio.h>
#include <stdio.h>
#include <iostream>
#include <clocale>
 
using namespace std;
 
void sort( int *A, int N, int p, int q)
{
    int i,j,r,T,h;
    if (p<q) 
    {
        printf("\nФУНКЦИЯ НАЧАЛАСЬ");
        r=*(A+p);
        i=p-1;
        j=q+1;
        printf("\nФУНКЦИЯ НАЧАЛАСЬ2");
        while (i<j)
        {
            do {i=i+1;} while (A[i]<r);
            do {j=j-1;} while (A[i]<r);
            if (i<j)
            {
                printf("\nФУНКЦИЯ НАЧАЛАСЬ3");
                T=A[i];
                A[i]=A[j];
                A[j]=T;
            } 
        } 
    }
    printf("\nФУНКЦИЯ НАЧАЛАСЬ4\n");
    sort(A, N, *(A+p), j);
    sort(A, N, *(A+j+1), q);
}
 
 
void main()
{
    setlocale (LC_CTYPE, "rus");
    int B[]={5, 0, 3, 1, 4, 8};
    int N;
    N=sizeof(B)/sizeof(B[0]);
    sort(B, N, 0, 5);
    for (int o=0; o<=5; o++)
    {
        printf("a[%d]= %d\n", o, B[o]);
    }
     _getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.