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

Количество элементов массива,равных 0 - C++

Восстановить пароль Регистрация
 
камилочка
 Аватар для камилочка
9 / 9 / 1
Регистрация: 15.12.2011
Сообщений: 34
22.07.2012, 11:26     Количество элементов массива,равных 0 #1
Прошу помочь буду блогодарна ,заранее спасибо!!

Вычеслить количество элементов массива,равных 0
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
22.07.2012, 12:17     Количество элементов массива,равных 0 #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
#include <iostream> 
#include <ctime> 
#include <cstdlib>
using namespace std; 
 
int main() 
{   
    setlocale(0, "rus");
    srand((unsigned) time(0)); 
    const int size = 10; 
    int array[size]; 
    int i;  
    int count = 0;
 
    for ( i = 0; i < size; i++) 
    { 
        array[i] = rand() % 3; 
        cout << array[i] << " "; 
    } 
    cout << endl;  
 
    for ( i = 0; i < size; i++) 
        if(array[i] == 0) 
            count++; 
 
    cout << "Количество элементов равных 0 в массиве " << count << endl; 
 
    system("Pause");
}
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
22.07.2012, 12:43     Количество элементов массива,равных 0 #3
David Sylva,

Для чего делать два цикла, можно все сделать спомощью одного!
Для чего обьявлять переменную i как глобальную для цикла, мы ее используем только в цикле.
Главная функция должа возвращать значение!

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
#include <iostream> 
#include <ctime> 
#include <cstdlib>
using namespace std; 
 
int main() 
{   
    setlocale(0, "rus");
    srand((unsigned) time(0)); 
    const int size = 10; 
    int array[size];   
    int count = 0;
 
    for (int i = 0; i < size; i++) 
    { 
        array[i] = rand() % 3; 
        cout << array[i] << " "; 
        if(array[i] == 0)
        {
            count++;
        }
    } 
    cout << endl;  
 
    cout << "Количество элементов равных 0 в массиве " << count << endl; 
 
    system("Pause");
    return 0;
}
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
22.07.2012, 12:50     Количество элементов массива,равных 0 #4
С критикой абсолютно согласен. Насчёт главной функции разве она автоматически не возвращает 0?
nameless
Эксперт C++
 Аватар для nameless
289 / 288 / 14
Регистрация: 16.06.2009
Сообщений: 486
22.07.2012, 12:55     Количество элементов массива,равных 0 #5
David Sylva, возвращает.

из стандарта (3.6.1):
If control reaches the end of main without encountering a return statement, the effect is that of executing return 0;
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
22.07.2012, 12:58     Количество элементов массива,равных 0 #6
nameless спасибо за подсказку. Я только начал осваивать стандарт, до этого места пока не дошёл.
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
22.07.2012, 16:13     Количество элементов массива,равных 0 #7
мы в разделе С++ в конце концов или нет, задача-то на std::count
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.07.2012, 16:31     Количество элементов массива,равных 0
Еще ссылки по теме:

Массив: количество элементов массива, равных 0 C++
C++ вычислить:- количество элементов массива, равных 0;- сумму элементов массива, расположенных после минимального элемента.
C++ Одномерные массивы и указатели (найти количество элементов массива, равных 0, сумму элементов массива...)

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

Или воспользуйтесь поиском по форуму:
Арсенал
144 / 66 / 6
Регистрация: 30.12.2011
Сообщений: 137
22.07.2012, 16:31     Количество элементов массива,равных 0 #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <algorithm>
 
int main()
{
    using namespace std;
    cout.flush();
    int arr[] = {0, 1, 2, 3, 4,5 , 0,6,0};
    cout << count(arr, arr+9, 0) << endl;
 
    return 0;
}
Yandex
Объявления
22.07.2012, 16:31     Количество элементов массива,равных 0
Ответ Создать тему
Опции темы

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