Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
13 / 13 / 3
Регистрация: 30.06.2013
Сообщений: 168

Ошибка при присвоении значения элементу матрицы

13.01.2017, 07:26. Показов 1678. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
пытаюсь сделать умножение матриц при присвоении значения в строке 19
matrix_B[i][j] = 3;// (rand() % 4000 + 100) / 100.0; вылетает ошибка, при меньшем размере матриц все работает нормально в чем проблема?
Unhandled exception at 0x40080000 in ConsoleApplication1.exe: 0xC00001A5: Обнаружен недопустимый обработчик исключений (parameters: 0x00000003).
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
int main() {
 
    setlocale(LC_ALL, "Russian");
 
    const int matrix_A_Columns = 12;
    const int matrix_A_Rows = 25;
    const int matrix_B_Columns = 36;
    const int matrix_B_Rows = 12;
 
    double matrix_A[matrix_A_Rows][matrix_A_Columns];
    double matrix_B[matrix_B_Rows][matrix_B_Columns];
    double matrix_Result[matrix_A_Rows][matrix_B_Columns];
 
    srand(time(NULL));
 
    for (int i = 0; i < matrix_A_Columns; i++) {
        for (int j = 0; j < matrix_A_Rows; j++) {
            //matrix_A[i][j] = (rand() % 4000 - 1900) / 100.0;
            matrix_A[i][j] = 6;// (rand() % 4000 - 1900) / 100.0;
            //cout << matrix_A[i][j] << " ";
        }
        //cout << endl;
    }
    //cout << endl;
        
    for (int i = 0; i < matrix_B_Columns; i++) {
        for (int j = 0; j < matrix_B_Rows; j++) {
            //matrix_B[i][j] = (rand() % 4000 + 100) / 100.0;
            matrix_B[i][j] = 3;// (rand() % 4000 + 100) / 100.0;
            //cout << matrix_B[i][j] << " ";
        }
        //cout << endl;
    }
 
    //for (int i = 0; i < matrix_A_Rows; i++)
    //  for (int j = 0; j < matrix_B_Columns; j++)
    //      matrix_Result[i][j] = matrix_A[i][j] * matrix_B[i][j];
 
    //int k = 0;
    //while (k <= 2) {
    //  for (int i = 0; i < matrix_A_Rows; i++)
    //      for (int j = 0; j <= matrix_B_Columns; j++)
    //          cout << matrix_Result[i][j] << " ";
    //  cout << endl;
    //  k++;
    //}
 
    cout << "Нажмите любую клавишу...";
    _getch();
    return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.01.2017, 07:26
Ответы с готовыми решениями:

Ошибка при присвоении значения элементу массива в функции
Есть такая вот структура: struct stantsia { string st; int hPrib,mPrib, hOtb,mOtb; }; Есть объявление массива: ...

Ошибка при присвоении переменной значения ячейки массива
Ошибку error C2106: '=' : left operand must be l-value выдает на строчке: if (mas!=-1 &amp;&amp; mas!=-1 &amp;&amp; mas = mas) numprotclast = mas; ...

Ошибка при присвоении элементу матрицы вычисленного значения
странная ошибка при присвоении элементу матрицы вычисленного значения все вычисления интеграла происходят нормально (проверено). Но если...

1
1498 / 1213 / 821
Регистрация: 29.02.2016
Сообщений: 3,631
13.01.2017, 08:29
поменять местами Columns и Rows
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    for (int i = 0; i < matrix_A_Rows; i++) {
        for (int j = 0; j < matrix_A_Columns; j++) {
            matrix_A[i][j] = (rand() % 4000 - 1900) / 100.0;
            cout << matrix_A[i][j] << " ";
        }
        cout << endl;
    }
    cout << endl;
        
    for (int i = 0; i < matrix_B_Rows; i++) {
        for (int j = 0; j < matrix_B_Columns; j++) {
            matrix_B[i][j] = (rand() % 4000 + 100) / 100.0;
            cout << matrix_B[i][j] << " ";
        }
        cout << endl;
    }

и умножение матриц исправить
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    for (int i = 0; i < matrix_A_Rows; i++)
        for (int j = 0; j < matrix_B_Columns; j++)
        {
            double temp = 0;
            for (int k = 0; k < matrix_A_Columns; k++)
                temp += matrix_A[i][k] * matrix_B[k][j];
            matrix_Result[i][j] = temp ;
        }
 
    for (int i = 0; i < matrix_A_Rows; i++)
        for (int j = 0; j <= matrix_B_Columns; j++){
            cout << matrix_Result[i][j] << " ";
        }
    cout << endl;
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.01.2017, 08:29
Помогаю со студенческими работами здесь

Ошибка при присвоении значения Range к переменной
Пытаюсь создать массив в котором будут размещены все непустые строки из диапазона А2:102. Sub Price() Dim price_for_Bill As Double ...

Ошибка при присвоении значения полям записи
uses crt; type e = record who: string; what: integer; end; z=^e; var p: z; begin clrscr; ...

Ошибка при присвоении значения из результата запроса
Доброго времени суток всем. Не уверен, что мой вопрос из этой темы, но всё же... Подскажите, почему возникает эта ошибка в момент...

Ошибка 380 при присвоении значения Combobox
выполняю команду ComboBox1.Value = TextBox1.Text &amp; &quot;:&quot; &amp; Chr(9) &amp; TextBox2.Text &amp; Chr(9) &amp; TextBox3.Text &amp; Chr(9) &amp; TextBox4.Text ...

Ошибка при присвоении значения переменной после блока WITH
Всем привет. Изучаю хранимые процедуры, подскажите плз: create procedure Proc1 @carType varchar(50), @maxPrice int OUTPUT AS ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru