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

Удалить столбцы матрицы, в которых есть нулевые элементы

08.01.2019, 10:50. Показов 1740. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Изменить матрицу – удалить столбцы матрицы, в которых есть нулевые элементы. C++

Добавлено через 25 минут
Матрица(nxn)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.01.2019, 10:50
Ответы с готовыми решениями:

Матрицы: удалить из матрицы столбцы, в которых есть равные элементы
1.Необходимо удалить из матрицы столбцы, в которых есть равные элементы: для матрицы: 1 2 3 4 5...

Вывести те столбцы матрицы, в которых есть нулевые элементы
Для матрицы А(4 строки,4 столбца) вывести те столбцы,в которых есть нулевые элементы ,или вывести...

Для матрицы А(4 строки,4 столбца) вывести те столбцы,в которых есть нулевые элементы
Для матрицы А(4 строки,4 столбца) вывести те столбцы,в которых есть нулевые элементы ,или вывести...

Удалить те столбцы матрицы, в которых есть повторяющиеся элементы
1) Дана двумерная матрица A(n,m) удалить те столбцы в которых есть повторяющиеся элементы. 2)...

3
2 / 1 / 1
Регистрация: 11.03.2018
Сообщений: 96
08.01.2019, 11:08 2
Miamorw, Можете привести пример?

Добавлено через 49 секунд
Miamorw,
2x2

0 1
1 1

Добавлено через 14 секунд
Miamorw, Что в итоге должно вывести?
0
0 / 0 / 0
Регистрация: 08.01.2019
Сообщений: 2
08.01.2019, 11:26  [ТС] 3
Матрица (nxn)
3x3

10 45 4
3 31 5
14 7 0

Матрица после удаления столбца

10 45
3 31
14 7
0
447 / 333 / 172
Регистрация: 01.07.2015
Сообщений: 1,162
08.01.2019, 14:10 4
Идея следующая:

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
#include <iostream>
#include <iterator>
#include <vector>
 
using namespace std;
 
int main() {
  int n;
  cin >> n;
 
  vector<vector<int>> a(n, vector<int>(n));
  for (int i = 0; i < n; ++i) {
    for (int j = 0; j < n; ++j)
      cin >> a[i][j];
  }
 
  int m = n;
 
  for (int i = 0; i < m; ++i) {
    bool found = false;
 
    int pos = 0;
 
    for (int j = 0; j < n; ++j) {
      if (a[j][i] == 0) {
        found = true;
 
        pos = i;
 
        break;
      }
    }
 
    if (found) {
      i = -1;
      --m;
 
      for (auto& j : a)
        j.erase(j.cbegin() + pos);
    }
  }
 
  for (const auto& i : a) {
    copy(i.cbegin(), i.cend(), ostream_iterator<int>(cout, " "));
 
    cout << '\n';
  }
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.01.2019, 14:10
Помогаю со студенческими работами здесь

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

Для матрицы А (4 строки, 4 столбца) вывести те столбцы, в которых есть нулевые элементы, или вывести сообщение "нет столбцов с нулями"
Задание состоит в написании программного кода Delphi. Для матрицы А (4 строки, 4 столбца)...

Вывести те строки матрицы, в которых есть нулевые элементы
Помогите, пожалуйста, найти и исправить. Задача: Для матрицы А (4 сторки, 5 столбцов) вывести те...

Создать одномерный массив В из элементов строк матрицы A[1..N,1..M], в которых есть нулевые элементы
Создать одномерный массив В из элементов строк матрицы A, в которых есть нулевые элементы, и...


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

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

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