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

Передача массива в функцию

26.02.2017, 20:35. Просмотров 137. Ответов 2
Метки нет (Все метки)

Ребят, такая проблема закралась. По воле курсовика требуется запрогать алгоритм нахождения минимального многочлена рекуррентной последовательности. Но вопрос не в этом. Код вроде как получился и работает, но после того, как я решил сделать красиво и разбить мэйн на функции код стал работать неправильно. Ниже сейчас поясню. Это кусок мейна:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int sequance[1000];
    for (int i = 0; i < dg; i++)
    {
        cin >> sequance[i];
    }
    cin >> l;
    for (int i = dg; i < l; i++)
    {
        int c = 0;
        for (int j = 0; j < dg; j++)
            c = (c + sequance[i - dg + j] * pl.v[j]) % P;
        sequance[i] = c;
    }
    cout << "\n All start sequence: ";
    for (int i = 0; i < l; i++)
        cout << sequance[i] << " ";
    cout << "\n";
    int y; //количество fv...vf
    cin >> y;
    cout << "Count of dis of polynom f: " << y << endl;
    berl_meas_alg(sequance,l);
До этого момента все работает нормально, отладчиком все проверено и элементы заполняют sequance правильно. Все "ломается", когда я перехожу в функцию. Вот сама функция.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void berl_meas_alg(int seq[],int l)
{
    for (int i = 0;i < l;i++)
    {
        seq[i] = u[0][i];
    }
    F[0].v.push_back(1);
    F[0].deg = 0;
    k[0] = cnt_zr(0);
    if (k[0] == l) 
    {
        cout << "The searched polynomial:   1\n";
        return;
    }
 
    for (int s = 1; s <= l; s++)
    {
Дальше код писать смысла нет, тк отладчик заходит в последний if и выходит. Также он мне говорит, что
C++
1
int seq[]
теперь состоит из 0x0079eb90, когда sequancе, которую я передавал на вход состояла из вполне адекватного массива из l заполненных элементов и остального хлама(на который мне наспать).
Вот, собственно, и вопрос, братцы: где я накосячил? Может какая детская ошибка в передаче массива?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.02.2017, 20:35
Ответы с готовыми решениями:

Передача массива в функцию используя указатель на функцию
У меня имеется готовая программа без передачи функции в функцию указателем, мне нужно передать...

Передача двухмерного массива из функцию в функцию
Допустим у меня есть функция, в которой &quot;генерируется&quot; массив. Но нужно его передать в другую...

Передача массива структур в функцию не указывая размера массива
Я читаю с командной строки файл в котором содержится массив структур. Есть библиотека с функцией в...

Передача массива в функцию
#include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;time.h&gt; using namespace std; void maxx(); ...

Передача массива в функцию
Всем привет. Есть некий динамический массив arr; Его надо передать в функцию. Я уже пробовал...

2
nmcf
6517 / 5746 / 2617
Регистрация: 14.04.2014
Сообщений: 24,494
26.02.2017, 21:02 2
Не в этом дело.
0
dblmok
1 / 1 / 1
Регистрация: 20.10.2016
Сообщений: 24
Завершенные тесты: 1
27.02.2017, 16:41  [ТС] 3
Ошибку нашел, спасибо.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2017, 16:41

Передача массива в функцию
Почему мусор выводит? bool insert(int* mas, int n, int v) { int _n = n + 1; int* mas2 = new...

Передача массива в функцию
есть массив a 100 - кол-во точек 0,1,2 - координаты соответственно x,y,z нужно написать функцию...

Передача массива в функцию
Не знаю в чем проблема, почему-то в функции act()(это моя функция), итерации выполняются по два...


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

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

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