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

Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента - C++

Восстановить пароль Регистрация
 
Nike91
11 / 0 / 0
Регистрация: 19.11.2014
Сообщений: 43
07.11.2015, 12:53     Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента #1
Дана целочисленная прямоугольная матрица.Определить количество столбцов, не содержащих ни одного нулевого элемента. Помогите составить программу...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.11.2015, 12:53     Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента
Посмотрите здесь:

Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента C++
C++ Определить количество столбцов в матрице, не содержащих ни одного нулевого элемента
C++ Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента
C++ Определить количество столбцов в матрице, не содержащих ни одного нулевого элемента
C++ Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Bespridelschic
44 / 44 / 16
Регистрация: 31.07.2013
Сообщений: 342
Завершенные тесты: 3
07.11.2015, 13:29     Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента #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
#include <iostream>
 
int main() {
    setlocale(LC_ALL, "Russian");
    int n, m;
    std::cout << "Введите количество строк: ";
    std::cin >> n;
    std::cout << "Введите количество стробцов: ";
    std::cin >> m;
    int **a = new int *[n], i, j;
    for (i = 0; i < n; i++)
    {
        a[i] = new int[m];
    }
    std::cout << "Введите " << n*m << " элементов:\n";
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            std::cout << "a[" << i + 1 << "." << j + 1 << "]: ";
            std::cin >> a[i][j];
        }
    }
    int temp = 0, count = 0;
    for (j = 0; j < m; j++)
    {
        for (i = 0; i < n; i++)
        {
            if (a[i][j] != 0)
            {
                temp++;
            }
        }
        if (temp == m)
        {
            count++;
        }
        temp = 0;
    }
    std::cout << "Количество столбцов не содержащих не одного нулевого элемента = " << count << std::endl;
    system("Pause >> 0");
    return 0;
}
Nike91
11 / 0 / 0
Регистрация: 19.11.2014
Сообщений: 43
07.11.2015, 14:13  [ТС]     Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента #3
А как вывести полученную матрицу для наглядности на экран, чтобы было видно где столбцы с нулями?
Bespridelschic
44 / 44 / 16
Регистрация: 31.07.2013
Сообщений: 342
Завершенные тесты: 3
07.11.2015, 15:15     Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента #4
Добавьте в 23 строчку данный фрагмент:
C++
1
2
3
4
5
6
7
8
9
std::cout << std::endl;
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            std::cout << std::setw(3) << a[i][j];
        }
        std::cout << "\n\n";
    }
А в самом начале подключите заголовочный файл
C++
1
#include <iomanip>
Nike91
11 / 0 / 0
Регистрация: 19.11.2014
Сообщений: 43
08.11.2015, 10:04  [ТС]     Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента #5
Что-то не работает, он ищет по всей матрице 0, если 0 нет, то пишет количество всех столбцов, а если 0 есть, то пишет таких столбцов нет...

Добавлено через 11 минут
Получилось вот так...
C++ (Qt)
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
#include <iostream>
#include <cmath>
#include <iomanip>
 
using namespace std;
int main()
{ setlocale(LC_ALL, "Russian");
 
int array[100][100];
int k=0; 
int k1=0; 
int n; // переменная для количества строк
int m; //переменная для количества столбцов
int i; 
int j;
cout<<"Введите кол. строк"<<endl;
        cin>>n;
cout<<"Введите кол. столбцов"<<endl;
        cin>>m;
cout<<"Введите элементы массива"<<endl;
 for (i=0; i<n; i++)
    {
        for (j=0; j<m; j++)
          { 
                    cin>>array[i][j];
          }
    }
cout<<endl;
  for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            std::cout << std::setw(3) << array[i][j];
        }
        std::cout << "\n\n";
    }
  for (j=0; j<n; j++)
  {    
        for (i=0; i<m; i++)
        {         
            if (array[j]==0)
             {
                k1++;
             }
        }
      if (!k1)
        {
          k++;
        }
        k1=0;
   }  
    cout<<"Количество столбцов не содержащих нулевой элемент "<<k<<endl;
    system ("pause");
    return 0;
  }
Bespridelschic
44 / 44 / 16
Регистрация: 31.07.2013
Сообщений: 342
Завершенные тесты: 3
08.11.2015, 10:52     Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента #6
Ну давайте протестируем, тест исходника который написал я:
Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента

Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента

Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента

Протестируем вашу при равных условиях:
Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента

Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента

Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента

По представленным условиям задачи мой код работает корректно. В вашем происходит ошибка. Опишите вашу проблему, что бы я мог разобраться что именно происходит не так.
Yandex
Объявления
08.11.2015, 10:52     Определить количество столбцов матрицы, не содержащих ни одного нулевого элемента
Ответ Создать тему
Опции темы

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