Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.52/48: Рейтинг темы: голосов - 48, средняя оценка - 4.52
bitingfox
3 / 1 / 1
Регистрация: 07.06.2016
Сообщений: 30
1

Необработанное исключение по адресу 0x008B94C5. 0xC0000005: нарушение прав доступа при чтении по

04.07.2016, 13:21. Просмотров 9274. Ответов 4
Метки нет (Все метки)

Здравствуйте! Функция должна искать локальные минимумы массива. То есть это элементы,которые меньше своих соседей. Дело в том,что функция ищет эти элементы,но в конце выдает ошибку "Необработанное исключение по адресу 0x008B94C5 в Проект2.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xFDFDFE0D." Помогите,пожалуйста!
Вот сам код
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
#include <iostream> // 1
#include <iomanip> // 2
using namespace std; // 3
void locmin(double** mas, int nrow, int ncol); // 4
 
int main() { // 6
    setlocale(LC_ALL, ""); // 7
    const int nrow = 4, ncol = 4; // 8
    double **mas = new double *[nrow]; // 9
    for (int i = 0; i < nrow; i++) // 10
        mas[i] = new double[ncol]; // 11
    cout << "Введите элементы массива : "; // 12
    for (int i = 0; i < nrow; i++) //Ввод массива
        for (int j = 0; j < ncol; j++) cin >> mas[i][j];
    for (int i = 0; i < nrow; i++) { //Контрольный вывод
        for (int j = 0; j < ncol; j++) cout << setw(4) << mas[i][j] << " ";
        cout << endl;
    }
    
    locmin(mas, nrow, ncol);
    
 
    system("pause");
}
 
 
void locmin(double** mas, int nrow, int ncol){
    
    for (int i = 0; i < nrow; i++){
        for (int j = 0; j < ncol; j++){
            if ((mas[i][j] < mas[i][j - 1]) && (mas[i][j] < mas[i][j + 1]) && (mas[i][j] < mas[i + 1][j]) && (mas[i][j] < mas[i - 1][j])){
                cout << "Строка " << i + 1 << " Столбец " << j + 1 << " минимум = " << mas[i][j] << endl;
                
            }
        
        }
    }
    
}
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2016, 13:21
Ответы с готовыми решениями:

Необработанное исключение по адресу 0x00105FD7 в Динамические структуры: 0xC0000005: нарушение прав доступа при чтении по адресу 0xCDCDCE09
Необработанное исключение по адресу 0x00105FD7 в Динамические структуры.exe: 0xC0000005: нарушение...

Необработанное исключение по адресу 0x00ED4891 в strings.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xCCCCCCCC
Программа толком не написан, проверял ранд и возникли проблемы. Ф-ция ранд генерирует одно и тоже...

Необработанное исключение по адресу 0x001B3371 в XXX.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xFDF
Делал консольную змейку и столкнулся вот с такой проблемой. void stena(char **arr) { int y...

Необработанное исключение по адресу 0x00E730CD в ConsoleApplication18.exe: 0xC0000005: нарушение прав доступа при чтении
Задана целочисленная динамическая матрица M. Элементы этой матрицы, без остатка делящиеся на 6,...

Вызвано исключение по адресу 0x013C1891 в Jacobi.exe: 0xC0000005: нарушение прав доступа при чтении по адресу
#include &lt;math.h&gt; const double eps = 0.001; ///&lt; желаемая точность /// N - размерность...

4
avgoor
1065 / 619 / 158
Регистрация: 05.12.2015
Сообщений: 1,785
04.07.2016, 13:33 2
Цитата Сообщение от bitingfox Посмотреть сообщение
mas[i][j] < mas[i - 1][j]
Что с чем будет сравниваться на 0 итерации, т.е. когда i==0?
0
bitingfox
3 / 1 / 1
Регистрация: 07.06.2016
Сообщений: 30
04.07.2016, 13:40  [ТС] 3
Да,только заметил. Вроде помогла проверка : if (i != 0 && i != nrow && j != 0 && j != nrow) . Надеюсь,что в этом и была вся проблема)
0
avgoor
1065 / 619 / 158
Регистрация: 05.12.2015
Сообщений: 1,785
04.07.2016, 13:42 4
Лучший ответ Сообщение было отмечено bitingfox как решение

Решение

Цитата Сообщение от bitingfox Посмотреть сообщение
Вроде помогла проверка : if (i != 0 && i != nrow && j != 0 && j != nrow)
надо не проверки вводить, а пределы поменять: for(int i=1; i<nrow-1; i++)
0
bitingfox
3 / 1 / 1
Регистрация: 07.06.2016
Сообщений: 30
04.07.2016, 13:50  [ТС] 5
Спасибо большое
0
04.07.2016, 13:50
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.07.2016, 13:50

Вызвано исключение по адресу 0x01083191 в ConsoleApplication.exe: 0xC0000005: нарушение прав доступа при чтении по адрес
Вызвано исключение по адресу 0x01083191 в ConsoleApplication.exe: 0xC0000005: нарушение прав...

Вызвано исключение по адресу 0x003F2357 в Лабораторна 15.exe: 0xC0000005: нарушение прав доступа при записи по адресу 0x
Что это такое и как это исправить? Вот фрагмент кода где и есть проблема: ... int size = 9;...

Необработанное исключение по адресу, нарушение прав доступа при записи по адресу
вот само задание: Авиарейсы (номер рейса, пункт назначения, время вылета, дата вылета, стоимость...


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

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

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