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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
qelik
0 / 0 / 0
Регистрация: 08.01.2013
Сообщений: 15
#1

Удалить из матрицы A все строки, сумма элементов которых четна, а из матрицы B – строки, сумма элементов которых нечетна(функции) - C++

15.01.2013, 05:28. Просмотров 413. Ответов 1
Метки нет (Все метки)

Удалить из матрицы А (7х5) все строки, сумма элементов которых четна, а из матрицы В (6х8) – строки, сумма элементов которых нечетна.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2013, 05:28     Удалить из матрицы A все строки, сумма элементов которых четна, а из матрицы B – строки, сумма элементов которых нечетна(функции)
Посмотрите здесь:
Подсчитать сумму тех элементов матрицы, у которых сумма индексов нечетна C++
Удалить все строки, сумма элементов которых является двузначным числом C++
C++ Удалить все строки матрицы, в которых среднее арифметическое элементов является двузначным числом
C++ Максимальная сумма элементов строки / минимальная сумма элементов столбца матрицы
Удалить из матрицы те строки, для которых количество ненулевых элементов больше количества нулевых элементов в строке C++
C++ Переместить вниз строки массива, в которых сумма элементов строки меньше ноля
Сумма элементов массива, у которых сумма индексов, на которых они находятся, - четное число. Проверить код C++
C++ Подсчитать количество строк матрицы у которых сумма элементов положительная
Найти число строк матрицы, сумма элементов которых меньше 0 C++
Найти число строк матрицы, сумма элементов которых меньше 0 C++
Найти номера строк матрицы, сумма элементов которых меньше 0 C++
C++ Определить, верно ли утверждение: сумма элементов каждой i-й строки матрицы больше суммы (i-1)-й строки

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asidorchenko
379 / 205 / 25
Регистрация: 09.04.2012
Сообщений: 635
15.01.2013, 10:40     Удалить из матрицы A все строки, сумма элементов которых четна, а из матрицы B – строки, сумма элементов которых нечетна(функции) #2
Примерно следующим образом.
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
 
void print(int m[6][8])
{
 int i,j;
 for(i=0;i<6;i++)
 {
  for(j=0;j<8;j++)
  {
  printf("%d ", m[i][j]);
  }
  printf("\n");
 }
}
 
 
void print(int m[7][5])
{
 int i,j;
 for(i=0;i<7;i++)
 {
  for(j=0;j<5;j++)
  {
  printf("%d ", m[i][j]);
  }
  printf("\n");
 }
}
 
void f1(int m[7][5])
{
 int r1, r2, i, j, s, k, l;
 
 r1 = 7;
 r2 = 5;
 
 for(i=0;i<r1;i++)
 {
  s = 0;
  for(j=0;j<r2;j++)
  {
   s = s+m[i][j];
  }
  if (s%2==0)
  {
   for(k=i; k+1< r1; k++)
   {
     for(l=0;l<r2;l++)
     {
       m[k][l] = m[k+1][l];
     }
   }
   r1--;     
   for(l=0;l<r2;l++)
   {
    m[r1][l] = 0;
   } 
   print(m);
   printf("\n");
  }
 }
}
 
void f1(int m[6][8])
{
 int r1, r2, i, j, s, k, l;
 
 r1 = 6;
 r2 = 8;
 
 for(i=0;i<r1;i++)
 {
  s = 0;
  for(j=0;j<r2;j++)
  {
   s = s+m[i][j];
  }
  if (s%2!=0)
  {
   for(k=i; k+1< r1; k++)
   {
     for(l=0;l<r2;l++)
     {
       m[k][l] = m[k+1][l];
     }
   }
   r1--;     
   for(l=0;l<r2;l++)
   {
    m[r1][l] = 0;
   } 
   print(m);
   printf("\n");
  }
 }
}
 
int main()
{
 int matrA[7][5];
 
 matrA[0][0] = 1;matrA[0][1] = 1;matrA[0][2] = 1;matrA[0][3] = 1;matrA[0][4] = 1;
 matrA[1][0] = 1;matrA[1][1] = 2;matrA[1][2] = 1;matrA[1][3] = 1;matrA[1][4] = 1;
 matrA[2][0] = 1;matrA[2][1] = 1;matrA[2][2] = 1;matrA[2][3] = 1;matrA[2][4] = 1;
 matrA[3][0] = 1;matrA[3][1] = 2;matrA[3][2] = 1;matrA[3][3] = 1;matrA[3][4] = 1;
 matrA[4][0] = 1;matrA[4][1] = 1;matrA[4][2] = 1;matrA[4][3] = 1;matrA[4][4] = 1;
 matrA[5][0] = 1;matrA[5][1] = 2;matrA[5][2] = 1;matrA[5][3] = 1;matrA[5][4] = 1;
 matrA[6][0] = 1;matrA[6][1] = 1;matrA[6][2] = 1;matrA[6][3] = 1;matrA[6][4] = 1;
 
 print(matrA);
   printf("\n");
 
 f1(matrA);
 
 int matrB[6][8];
 
 matrB[0][0] = 1;matrB[0][1]=1;matrB[0][2]=1;matrB[0][3]=1;matrB[0][4]=0;matrB[0][5]=1;matrB[0][6]=1;matrB[0][7]=1;
 matrB[1][0] = 1;matrB[1][1]=1;matrB[1][2]=1;matrB[1][3]=1;matrB[1][4]=1;matrB[1][5]=1;matrB[1][6]=1;matrB[1][7]=1;
 matrB[2][0] = 1;matrB[2][1]=1;matrB[2][2]=1;matrB[2][3]=1;matrB[2][4]=1;matrB[2][5]=1;matrB[2][6]=1;matrB[2][7]=1;
 matrB[3][0] = 1;matrB[3][1]=1;matrB[3][2]=1;matrB[3][3]=1;matrB[3][4]=1;matrB[3][5]=1;matrB[3][6]=1;matrB[3][7]=1;
 matrB[4][0] = 1;matrB[4][1]=1;matrB[4][2]=1;matrB[4][3]=1;matrB[4][4]=1;matrB[4][5]=1;matrB[4][6]=1;matrB[4][7]=1;
 matrB[5][0] = 1;matrB[5][1]=1;matrB[5][2]=1;matrB[5][3]=1;matrB[5][4]=1;matrB[5][5]=1;matrB[5][6]=1;matrB[5][7]=1;
 
 print(matrB);
   printf("\n");
 f1(matrB);
 
 
 return 0;
}
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru