Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Illko
1 / 1 / 1
Регистрация: 25.05.2015
Сообщений: 32
#1

Выход за пределы вектора - C++

28.04.2016, 13:52. Просмотров 169. Ответов 1
Метки нет (Все метки)

Программа кодирует несколько чисел в одно. Проблема состоит в том, что когда используется рекурсия в функции С(int x, vector<int>y) вылетает ошибка о том, что произошел выход за пределы вектора, хотя с каждой рекурсией длинна вектора уменьшается на 1, после чего она должна начать возвращать значения.

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
int C(int x, vector<int> y) {
    bool b = false;
        //если кол-во элементов вектора больше одного, то функция опять вызовет себя
    if (y.size() >= 2)
        b = true;
    else b = false;
    int n = 0;
    if (b == true) {
        vector<int>k(y.size() - 1);
        for (int i = 0; i < k.size(); i++)
            k[i] = y[i + 1];
        n = C((pow((double)(x + y[0]), 2.0) + 3 * x + y[0]) / 2, k);
    }
    else {
        n = (pow((double)(x + y[0]), 2.0) + 3 * x + y[0]) / 2;
    }
    return n;
}
int main()
{
    int x = 0;
    vector<int>y(2);
    y[0] = 5;
    y[1] = 6;
    int n = C(x, y);
    cout << n << endl;
    system("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.04.2016, 13:52
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Выход за пределы вектора (C++):

Выход за пределы вектора
Добрый день, решаю задачку на динамическое программирование, нужно левый...

Выход за пределы вектора
Проблэм: запускается, но после записи символов выдает ошибку, мол, вектор вышел...

Выход за пределы вектора
выход за пределы вектора, я новичок, и не могу найти причину ошибки. Это...

Выход за пределы вектора
Здравствуйте, столкнулся с проблемой, что программа экстренно останавливает...

Выход за пределы вектора ("Vector subscript out of range") - найти и исправить ошибку в коде
Имеется код: struct orders { string product; string mark; ...

Выход за пределы памяти
подскажите почему вылазит за пределы памяти присвоение в 25 строке как сделать...

1
akaAxeL
66 / 66 / 59
Регистрация: 14.07.2013
Сообщений: 251
28.04.2016, 15:44 #2
Напишите ошибку, которая выводится, потому что у меня все работает. В данном случае выводится 246
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.04.2016, 15:44
Привет! Вот еще темы с решениями:

Выход за пределы цикла
Вообщем необходимо реализовать алгоритм по пунктам от 1 до 27 и в них есть...

Выход за пределы массива
#include &lt;assert.h&gt; #include &lt;assert.h&gt; #include &lt;string.h&gt; #include...

Выход за пределы массива
По мойму нарушение границ массива в c++ не допускается. Это будет выход за...

Выход за пределы массива
Заполняю динамический массив случайными числами и вывожу его на экран. Дебажная...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru