Форум программистов, компьютерный форум CyberForum.ru

Удалить строки двумерного массива - C++

Восстановить пароль Регистрация
 
TheAlpha
6 / 6 / 2
Регистрация: 03.01.2013
Сообщений: 113
07.01.2013, 19:46     Удалить строки двумерного массива #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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <cmath>
#include <iostream>
using namespace std;
int**creat(int &n, int &m)
{
cout<<"n=";cin>>n; cout<<"m=";cin>>m;
int**mas=new int*[n];
for(int i=0; i<n; ++i) mas[i]=new int[m];
for(int i=0; i<n; ++i)
for(int j=0; j<m; ++j)
{
cout<<"mas["<<i<<"]["<<j<<"]=";cin>>mas[i][j];
}
return mas;
}
void print(int** mas,int n, int m)
{
for(int i=0;i<n;i++)
{
for(int j=0; j<m;j++)
{
cout<<mas[i][j]<<"\t";
}
cout<<endl;
}
}
void udal(int** mas,int n, int m, int k)
{
for(int i=k;i<n;i++)
for(int j=0;j<m;j++)
{
mas[i][j]=mas[i+1][j];
}
}
int main()
{
int n,m;
int**a=creat(n,m);
cout<<"DANO:"<<endl;
print(a,n,m);
cout<<"RABOTA:"<<endl;
{
for(int i=0; i<n; i++)
for(int j=0; j<m; j++)
delete[]a[i];
delete[]a;
return 0;
}
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2013, 19:46     Удалить строки двумерного массива
Посмотрите здесь:

От значений элементов каждой строки двумерного массива вычесть значение минимального элемента этой строки C++
Удалить строку из двумерного массива и проверить упорядоченность в С C++
удалить строку из двумерного массива C++
C++ Написать функцию проверяющую есть ли отрицательные элементы в указанной строке двумерного массива. Удалить из массива все строки с отрицательными элем
1. Написать функцию проверяющую есть ли отрицательные элементы в указанной строке двумерного массива. Удалить из массива все строки с отрицательными э C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nixy
ComfyMobile
 Аватар для Nixy
399 / 280 / 8
Регистрация: 24.07.2012
Сообщений: 916
07.01.2013, 19:48     Удалить строки двумерного массива #2
C++
1
2
3
for(int i=0; i<n; i++)
   for(int j=0; j<m; j++)
     delete[]a[i];
произойдет n*m удалений а доступно только n
TheAlpha
6 / 6 / 2
Регистрация: 03.01.2013
Сообщений: 113
07.01.2013, 20:01  [ТС]     Удалить строки двумерного массива #3
Забыл функцию вставить, вот программный код, но выдает ошибку во время работы. Помогите
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
#include <cmath>
#include <iostream>
using namespace std;
int**creat(int &n, int &m)
{
cout<<"n=";cin>>n; cout<<"m=";cin>>m;
int**mas=new int*[n];
for(int i=0; i<n; ++i) mas[i]=new int[m];
for(int i=0; i<n; ++i)
for(int j=0; j<m; ++j)
{
cout<<"mas["<<i<<"]["<<j<<"]=";cin>>mas[i][j];
}
return mas;
}
void print(int** mas,int n, int m)
{
for(int i=0;i<n;i++)
{
for(int j=0; j<m;j++)
{
cout<<mas[i][j]<<"\t";
}
cout<<endl;
}
}
void udal(int** mas,int &n, int &m, int k)
{
for(int i=k;i<n;i++)
for(int j=0;j<m;j++)
{
mas[i][j]=mas[i+1][j];
}
}
int main()
{
int n,m;
int**a=creat(n,m);
cout<<"DANO:"<<endl;
print(a,n,m);
cout<<"RABOTA:"<<endl;
{
 
udal(a,n,m,2);
 
for(int i=0; i<n; i++)
   for(int j=0; j<m; j++)
     delete[]a[i];
return 0;
}
}
Nixy
ComfyMobile
 Аватар для Nixy
399 / 280 / 8
Регистрация: 24.07.2012
Сообщений: 916
07.01.2013, 20:20     Удалить строки двумерного массива #4
я опять акцентирую ваше внимание на строки кода 48-50
Yandex
Объявления
07.01.2013, 20:20     Удалить строки двумерного массива
Ответ Создать тему
Опции темы

Текущее время: 17:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru