0 / 0 / 1
Регистрация: 18.05.2014
Сообщений: 18
1

Удалить строки динамической матрицы, начиная со строки К1 и до строки К2

02.06.2014, 18:54. Показов 2750. Ответов 2
Метки нет (Все метки)

Сформировать динамический двумерный массив, заполнить его случайными числами и удалить строки, начиная со строки К1 и до строки К2
вот текст программы которая удаляет одну строку К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
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
int main ()
{
    int **a;
    int **matr,**b;
int n,i,m,j,k,p;
 
cout << "Vvedite kolichestvo strok/n: "  ; cin >> n;
cout<<"Vvedite kolichestvo stolbcov/n:"; cin>>m;
matr=new int*[n];
for(int i=0;i<n;i++){matr[i]=new int [m];}
srand(time(NULL));
for  (i=0; i<n; i++)
     {for (j=0;j<m;j++)
     { matr[i][j]=rand()%50;
       cout<<matr[i][j]<<"\t";}
      cout<<endl;}
cout<<"Vvedite nomer stroki K1";
cin>>k;
b=new int*[n];                  
for(int i=0;i<m;i++){b[i]=new int(n-1);}    
 
for (i=0;i<k;i++)                   
for (j=0;j<m;j++)               
{b[i][j]=matr[i][j];}
 
  for (i=k;i<(n-1);i++)
       {for (j=0;j<n;j++)
       b[i][j]=matr[i+1][j];
       }
      
cout<<"New array\n";       
for (i=0;i<n-1;i++)
 {for (j=0;j<m;j++)
cout<<b[i][j]<<'\t';
cout<<'\n';}
 
getch ();
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.06.2014, 18:54
Ответы с готовыми решениями:

Удалить строки, начиная со строки К1 и до строки К2 (динамические массивы)
#include &lt;iostream&gt; #include &lt;ctime&gt; #include &lt;stdlib.h&gt; using namespace std; int main() {...

Как в текстовом файле удалить все строки, начиная с первой, до строки, соответствующей определенному значению?
как через cmd удалить из 1.txt строки с 1-ой до строки соответствующей определенному значению...

Как в текстовом файле удалить все строки, начиная с первой, до строки, соответствующей определенному значению?
как взять первые 11 символов (цифры) в последней строке с 1.txt и последней строке в 2.txt потом...

Вывести все элементы пятой строки матрицы, начиная с последнего элемента строки
№1. Дан двухмерный массив. Вывести на экран: а) все элементы s-го столбца массива; б) все...

2
13 / 13 / 6
Регистрация: 27.05.2012
Сообщений: 208
02.06.2014, 19:24 2
можно попробовать числа до K1 копировать в новый массив, а потом копировать числа после K2, получиться что числа из промежутка k1-k2 не будут в новом массиве. Но это не самый лучший вариант
0
0 / 0 / 1
Регистрация: 18.05.2014
Сообщений: 18
02.06.2014, 21:38  [ТС] 3
спс за предложение))) но мне как то сложно будет это сделать)))может есть какой- нибудь более легкий способ?

Добавлено через 1 час 59 минут
попробовал написать как советовал товарищ выше))что то не получается )помогите плиз
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
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
int main ()
{
    int **a;
    int **matr,**b,**c;
int n,i,m,j,k1,k2;
 
cout << "Vvedite kolichestvo strok/n: "  ; cin >> n;
cout<<"Vvedite kolichestvo stolbcov/n:"; cin>>m;
matr=new int*[n];
for(int i=0;i<n;i++){matr[i]=new int [m];}
srand(time(NULL));
for  (i=0; i<n; i++)
     {for (j=0;j<m;j++)
     { matr[i][j]=rand()%50;
       cout<<matr[i][j]<<"\t";}
      cout<<endl;}
cout<<"Vvedite nomer stroki K1";
cin>>k1;
cout<<"Vvedite nomer stroki K2";
cin>>k2;
b=new int*[n];                  //Âûäåëÿåòñÿ ïàìÿòü ïîä íîâûé ìàññèâ,
for(int i=0;i<m;i++){b[i]=new int(n-1);}        //â êîòîðîì êîë-âî ñòðîê íà 1 ìåíüøå
for (i=0;i<k1;i++)                  //Çàïèñü ýë-â èç ñòàðîãî ìàññèâà â íîâûé
for (j=0;j<m;j++)                   //Êðîìå k-ãî ñòîëáöà
{b[i][j]=matr[i][j];}
 
  for (i=0;i<(n-1);i++)
       {for (j=0;j<n;j++)
       b[i][j]=matr[i+1][j];
       }
c=new int *[n];
for (int i=k2;i<m;i++) {c[i]=new int(n-k2);}
for (i=k2;i<k2;i++)
for (j=0;j<m;j++)
{c[i][j]=matr[i][j];}  
for (i=0;i<(n-k2);i++)
{for (j=0;j<n;j++)
b[i][j]=matr[i+k2][j];}     
      
cout<<"New array\n";       
for (i=0;i<n-1;i++)&&(i=k2;i<n-k2;i++)
 {for (j=0;j<m;j++)
cout<<b[i][j]&& c[i][j]<<'\t';
cout<<'\n';}
 
getch ();
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.06.2014, 21:38
Помогаю со студенческими работами здесь

Рассортировать строки динамической матрицы по наибольшему элементу строки.
Рассортировать строки динамической матрицы по наибольшему элементу строки. Как это?я не понимаю...

Наименьший элемент каждой строки матрицы, начиная со 2-й, замените наибольшим элементом предшествующей строки
Условие :Наименьший элемент каждой строки матрицы, начиная со 2-й, замените наибольшим элементом...

Вывести на экран все элементы n-й строки матрицы, начиная с нижнего элемента этой строки
Дан двумерный массив. Вывести на экран все элементы n-й строки массива. начиная с нижнего элемента...

Наименьший элемент каждой строки матрицы, начиная со второй, замените наибольшим элементом предыдущей строки
1.Наименьший элемент каждой строки матрицы, начиная со второй, замените наибольшим ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru