Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
0 / 0 / 1
Регистрация: 18.05.2014
Сообщений: 18
1

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

02.06.2014, 18:54. Показов 1955. Ответов 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® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.