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

Добавить К строк в конец матрицы - C++

Восстановить пароль Регистрация
 
раськин леонид
0 / 0 / 0
Регистрация: 11.02.2010
Сообщений: 12
17.02.2012, 09:46     Добавить К строк в конец матрицы #1
Добавить К строк в конец матрицы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
challengerr
43 / 36 / 2
Регистрация: 30.07.2008
Сообщений: 136
17.02.2012, 16:07     Добавить К строк в конец матрицы #2
Пример:
Код
#include <stdio.h>
int main()
{
int i, j, k, n, m;
int **a, **b;
n = 5; // начальный размер матрицы 1 
m = 2; // начальный размер матрицы 2 
k = 2; // количество добавляемыхъ строк
// выделение памяти под первую матрицу
a = new int*[n];
for (i = 0; i < n; i++)
 a[i] = new int[m];
// заполнение первой матрицы
for (i = 0; i < n; i++)
 for (j = 0; j < m; j++) 
  a[i][j] = 0;
// первая матрица
for (i = 0; i < n; i++)
 {
 for (j = 0; j < m; j++)  
  printf("%d ", a[i][j]);  
 printf("\n");
 }
printf("\n");
// выделение памяти под вторую матрицу
b = new int*[n + k];
for (i = 0; i < n + k; i++)
 b[i] = new int[m];
// заполнение второй матрицы из первой
for (i = 0; i < n + k; i++)
 {
 for (j = 0; j < m; j++)
  if (i < n)  
   b[i][j] = a[i][j];
  else  
   b[i][j] = 0;  
 }
// вторая матрица
for (i = 0; i < n + k; i++)
 {
 for (j = 0; j < m; j++)
  printf("%d ", b[i][j]);  
 printf("\n");
 }
// удаление матриц
for (i = 0; i < n + k; i++)
 delete [] b[i];
delete [] b;
for (i = 0; i < n; i++)
 delete [] a[i];
delete [] a;
}
AlmazSeo
 Аватар для AlmazSeo
3 / 3 / 0
Регистрация: 24.10.2011
Сообщений: 103
17.02.2012, 16:13     Добавить К строк в конец матрицы #3
А почему она выдает значения 0 0 0 0 0 0 0... n?
challengerr
43 / 36 / 2
Регистрация: 30.07.2008
Сообщений: 136
17.02.2012, 16:16     Добавить К строк в конец матрицы #4
Потому что я сделал нулевую матрицу таким образом:
Код
for (i = 0; i < n; i++)
 for (j = 0; j < m; j++) 
  a[i][j] = 0;
и откопировал ее в новую с добавленными k строками
Yandex
Объявления
17.02.2012, 16:16     Добавить К строк в конец матрицы
Ответ Создать тему
Опции темы

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