Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2014, 15:01   #1
Foxlin
Пользователь
 
Регистрация: 05.12.2013
Сообщений: 16
По умолчанию Идет ошибка Нарушение прав доступа...Помогите

Ошибка "нарушение прав доступа"....помогите разобраться
Код:
#include <conio.h>
#include <iostream>
 
using namespace std; //включает в программу определения
 
 
int LastNegative (int x, int y, int **mas)
{
        int t;
        for (int i=x-1; i>=0; i--)
            for (int j=y-1; j>=0; j--)
                if (mas[i][j] < 0)
                 {
                        t =  mas[i][j];
                        return t;
                 }
 
        return 0;
}
 
int InputMatrix (int& x, int& y, int **mas)
{
    setlocale(LC_ALL, "Russian");
    cout << "Ввод размера матрицы.\n Строк: ";
    cin >> x;
    cout << "Столбцов:  ";
    cin >> y;
    cout << "Исходный вид матрицы: \n";
 
    for (int i=0; i<x; i++)
        for (int j=0; j<y; j++)
            cin >> mas[i][j];
 
    return 0;
}
 
int OutputMatrix (int x, int y, int **mas)
{
    for (int i=0; i<x; i++)
    {
        for (int j=0; j<y; j++)
            cout << mas[i][j] << ' ';
        cout << endl;
    }
    return 0;
}
 
 
int main()
{
    setlocale(LC_ALL, "Russian");
    int n, m, k, l;
    int **A, **B;
    int i, j, t;
    
    InputMatrix(n,m,A=0);
    InputMatrix(k,l,B=0);
 
    cout << LastNegative(n,m,A) << ' ' << LastNegative(k,l,B);;
 
    t = LastNegative(n,m,A);
 
    for (i=n-1; i>=0; i--)
        for (j=m-1; j>=0; j--)
            if (A[i][j] < 0)
                A[i][j] = LastNegative(k,l,B);
 
    for (i=k-1; i>=0; i--)
        for (j=l-1; j>=0; j--)
            if (A[i][j] < 0)
                A[i][j] = t;
 
    cout << "Результат матрицы А:" << endl;
    OutputMatrix(n,m,A);
    cout << "Результат матрицы B:" << endl;
    OutputMatrix(k,l,B);
 
    
 
    return 0;
 
}
Foxlin вне форума Ответить с цитированием
Старый 17.01.2014, 15:09   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

память под матрицы кто выделять будет?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нарушение прав доступа при чтении Павел Гайдаржи Помощь студентам 0 11.11.2012 19:45
C++ Error Необработанное исключение...нарушение прав доступа Alt_Shift Помощь студентам 1 24.05.2012 12:55
Нарушение прав доступа Simito Общие вопросы C/C++ 1 03.06.2011 12:06
Нарушение прав доступа Hemul Qt и кроссплатформенное программирование С/С++ 1 08.04.2011 20:02
нарушение прав доступа при чтении Farrel Общие вопросы C/C++ 1 22.02.2011 00:32