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

В заданной матрице найти количество элементов равных нулю - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.82
ashta
6 / 6 / 1
Регистрация: 28.08.2012
Сообщений: 65
05.01.2013, 23:55     В заданной матрице найти количество элементов равных нулю #1
Находит элемент 0, но показывает это в трех строках. Как сделать так, чтобы вывести Количество элементов 0 - столько то.


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>
# include<stdlib.h> 
 
 
using namespace std;
void main()
{
 
 
const int row=3;
    const int col=4;
    int array [row] [col];
    int n=0;
 
    for (int i=0; i<row; i++)// перебираем строки массива
    {
        for (int j=0; j<col; j++)// перебираем отдельные элементы массива
        {
            array[i][j]=rand()%4; // инициализация элементов значениями в диапазоне от 0 до 10
            cout<<array[i][j]<<" ";
        }
        cout<<"\n\n";
    }
 
    // поиск в строках нулевого элемента
 
    for (int i=0; i<row; i++){//  // перебираем отдельные строки (одномерные массивы в совокупности)
        {
        for (int j=0; j<col; j++)// // изменение индекса столбца для текущей строки
        { 
            if (array [i][j]==0)
                n++;                
            
        }
    }
    cout<<"Kolichestvo elementov 0 "<<n<<"\n";
    }
    
}
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2013, 23:55     В заданной матрице найти количество элементов равных нулю
Посмотрите здесь:

C++ Вычислить количество элементов массива, равных нулю
Определите количество элементов массива равных нулю. C++
Определите количество элементов массива равных нулю C++
Вычислить количество элементов в массиве, равных нулю C++
Двумерный массив. Определить количество равных нулю элементов. C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
06.01.2013, 00:16     В заданной матрице найти количество элементов равных нулю #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
#include<iostream>
#include<cstdlib> 
 
 
using namespace std;
int main()
{
    const int row=3;
    const int col=4;
    int array [row] [col];
    int n=0;
 
    for (int i=0; i<row; i++)// перебираем строки массива
    {
        for (int j=0; j<col; j++)// перебираем отдельные элементы массива
        {
            array[i][j]=rand()%4; // инициализация элементов значениями в диапазоне от 0 до 10
            cout<<array[i][j]<<" ";
        }
        cout<<"\n\n";
    }
 
    // поиск в строках нулевого элемента
 
    for (int i=0; i<row; i++)//  // перебираем отдельные строки (одномерные массивы в совокупности)
        for (int j=0; j<col; j++)// // изменение индекса столбца для текущей строки 
            if (array [i][j]==0)
                n++;                
            
    cout<<"Kolichestvo elementov 0 "<<n<<"\n";
    
  }
Добавлено через 23 секунды

Не по теме:

void main писать не корректно

LiveRos
62 / 67 / 1
Регистрация: 05.10.2012
Сообщений: 240
06.01.2013, 00:17     В заданной матрице найти количество элементов равных нулю #3
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
# include<iostream>
# include<stdlib.h>
 
 
using namespace std;
void main()
{
 
 
const int row=3;
    const int col=4;
    int array [row] [col];
    int n=0;
 
    for (int i=0; i<row; i++)// перебираем строки массива
    {
        for (int j=0; j<col; j++)// перебираем отдельные элементы массива
        {
            array[i][j]=rand()%4; // инициализация элементов значениями в диапазоне от 0 до 10
            cout<<array[i][j]<<" ";
        }
        cout<<"\n\n";
    }
 
    // поиск в строках нулевого элемента
 
    for (int i=0; i<row; i++){//  // перебираем отдельные строки (одномерные массивы в совокупности)
        {
        for (int j=0; j<col; j++)// // изменение индекса столбца для текущей строки
        {
            if (array [i][j]==0)
                n++;
 
        }
    }
   }
cout<<"Kolichestvo elementov 0 - "<<n<<"\n";
system("pause");
}
Почему финальный вывод данных входит в тело цыкла? Соответственно сколько нолей - столько раз и выводится сообщение.
Ghost77728
 Аватар для Ghost77728
0 / 0 / 0
Регистрация: 30.11.2013
Сообщений: 12
30.11.2013, 17:27     В заданной матрице найти количество элементов равных нулю #4
Почему именно так: array[i][j]=rand()%4; ?
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,053
30.11.2013, 17:34     В заданной матрице найти количество элементов равных нулю #5
Цитата Сообщение от LiveRos Посмотреть сообщение
array[i][j]=rand()%4; // инициализация элементов значениями в диапазоне от 0 до 10
ну это ты сгоряча
значения будут 0 1 2 3
ironist
 Аватар для ironist
0 / 0 / 2
Регистрация: 14.02.2014
Сообщений: 14
14.02.2014, 22:33     В заданной матрице найти количество элементов равных нулю #6
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
#include<iostream>
#include<stdlib.h> 
#include<time.h> 
using namespace std;
void main()
{
    const int row=3,cols=4;
    int arr[row][cols];
    short repeat=0;
    srand(time(NULL)); 
    for (int i=0;i<row;i++)
    {
        for(int j=0;j<cols;j++)
        {
            arr[i][j]=rand()%10; //Заполняем массив случайными числами от 0 до 9.
            cout<<arr[i][j]<<" ";
        }
        cout<<"\n\n";
    }
    for (int i=0;i<row;i++) //Перебираем строки.
        for(int j=0;j<cols;j++) //Перебираем столбцы.
            if(arr[i][j]==0) repeat++;  //В случае совпадения, наращиваем переменную.   
    if(repeat==0) cout<<"No repeat!"<<endl;
    else cout<<"Repeat 0: "<<repeat<<endl;
}
Daheimm
2 / 2 / 1
Регистрация: 30.11.2015
Сообщений: 14
12.12.2015, 17:08     В заданной матрице найти количество элементов равных нулю #7
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
#include<iostream>
#include <ctime>
using namespace std;
 
 
 
void main()
 
{
    
    int iarray[3][4];
    int common = 0;
 
setlocale(LC_ALL, "Russian");
 
    srand(ime(NULL));
 
 
    for (int i = 0;i < 3;i++)
    {
        for (int a = 0;a < 4;a++)
 
        {
            iarray[i][a] = rand() % 2;
            cout << iarray[i][a]<<"\t";
 
            if (iarray[i][a] == 0)common += 1;
            
            }
        cout << endl;
        }
 
    cout <<"Zero = "<< common<<endl;
    }
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,053
12.12.2015, 17:20     В заданной матрице найти количество элементов равных нулю #8
Цитата Сообщение от Daheimm Посмотреть сообщение
void main()
{
ошибка
нужно
C++
1
int main()
Dimension
Dimension
547 / 428 / 132
Регистрация: 08.04.2014
Сообщений: 1,693
Завершенные тесты: 1
12.12.2015, 17:43     В заданной матрице найти количество элементов равных нулю #9
вы бы еще через 5 лет сюда написали
Цитата Сообщение от ValeryS Посмотреть сообщение
ошибка
нужно
он же ничего не возвращает
KOPOJI
Модератор
 Аватар для KOPOJI
16242 / 6453 / 390
Регистрация: 12.06.2012
Сообщений: 19,353
12.12.2015, 17:49     В заданной матрице найти количество элементов равных нулю #10
Dimension, вообще-то должен возвращать статус-код завершения программы, 0 - успешное завершение, любое ненулевое значение - аварийное завершение

Добавлено через 1 минуту
это просто некоторые IDE а-ля VS позволяют такую ересь

тип main должен быть int, а то, что отсутствует непосредственно сам код возврата значения в большинстве плюсовых программ (в смысле, строчки return 0; ) - так это только потому, что компилятор С++ в случае отсутствия этой строчки подразумевает, что она присутствует - т.е., что возвращен код 0.
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,053
12.12.2015, 18:08     В заданной матрице найти количество элементов равных нулю #11
Цитата Сообщение от Dimension Посмотреть сообщение
вы бы еще через 5 лет сюда написали
А что через пять лет стандарт изменится?
Dimension
Dimension
547 / 428 / 132
Регистрация: 08.04.2014
Сообщений: 1,693
Завершенные тесты: 1
12.12.2015, 18:43     В заданной матрице найти количество элементов равных нулю #12
Цитата Сообщение от ValeryS Посмотреть сообщение
А что через пять лет стандарт изменится?
может быть ,но я думаю автор темы давно решил проблему
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2015, 18:51     В заданной матрице найти количество элементов равных нулю
Еще ссылки по теме:

C++ решение двумерных массивов (Вычислить сумму элементов не равных нулю и посчитать их количество, найти номера столбцов с положительными элементами)
C++ В заданных массивах найти количество элементов равных нулю и заменить их на -100 в случае выполнения условия
C++ Найти количество положительных, отрицательных и равных нулю элементов в одномерном вещественно массиве

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

Или воспользуйтесь поиском по форуму:
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,053
12.12.2015, 18:51     В заданной матрице найти количество элементов равных нулю #13
Цитата Сообщение от Dimension Посмотреть сообщение
,но я думаю автор темы давно решил
я указал ошибку не автора, хотя у него такая же, а Daheimm, который сегодня прислал код
Цитата Сообщение от Dimension Посмотреть сообщение
может быть
даже скорее всего но int main незыблемо
Yandex
Объявления
12.12.2015, 18:51     В заданной матрице найти количество элементов равных нулю
Ответ Создать тему
Опции темы

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