Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

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

25.11.2016, 17:45. Просмотров 423. Ответов 2
Метки нет (Все метки)

Дан одномерный массив заданный генератором случайных чисел. Найти количество элементов массива, равных 0.А так же, сумму элементов массива, расположеных после минимального элемента.
Проблема с компиляцией в DEV++ не пойму где тут ошибка буду благодарен если исправите и если не трудно напишите комментарий к каждой команде
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <vector>
#include <random>
#include <algorithm>
using namespace std;
 
int main() {
    std::default_random_engine generator;
    std::uniform_int_distribution<int> distribution(-3,8);
    vector<int> array(20);
    generate(array.begin(), array.end(), [&distribution,&generator](){return distribution(generator);});
    cout << "Массив: ";
    for(auto x:array){
        cout << x << " ";
    }
    cout << endl << "Элементов, равных 0 - " << count_if(array.begin(), array.end(), [](auto x){return x==0;});
    int sum = 0;
    for_each(min_element(array.begin(), array.end()),array.end(),[&sum](int x){sum+=x;});
    cout << endl << "Сумма после минимума - " << sum;
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2016, 17:45
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Найти количество элементов массива равных нулю (C++):

Вычислить количество элементов массива, равных нулю - C++
1 задание) Вычислить количество элементов массива, равных нулю. 2 задание) Вычислить сумму элементов массива, расположенных после...

Определите количество элементов массива равных нулю. - C++
1. Определите количество элементов массива равных нулю.

Определите количество элементов массива равных нулю - C++
Определите количество элементов массива равных нулю

В заданной матрице найти количество элементов равных нулю - C++
Находит элемент 0, но показывает это в трех строках. Как сделать так, чтобы вывести Количество элементов 0 - столько то. #...

Найти количество положительных, отрицательных и равных нулю элементов в одномерном вещественно массиве - C++
Найдите количество положительный, отрицательных и равных нулю элементов в одномерном вещественно массиве. Помогите с задачей,...

В заданных массивах найти количество элементов равных нулю и заменить их на -100 в случае выполнения условия - C++
Помогите пожалуйста. В массивах Х1..Х5, Y1..Y7, Z1..Z14 определить количество равных нулю элементов. Если их больше половины, то первый и...

2
MrGluck
Модератор
Эксперт CЭксперт С++
7772 / 4808 / 747
Регистрация: 29.11.2010
Сообщений: 13,127
25.11.2016, 18:11 #2
Цитата Сообщение от слон11 Посмотреть сообщение
Проблема с компиляцией в DEV++
Код не содержит ошибок компиляции: http://rextester.com/IRUI95050 Мб у вас Dev со стареньким компиляторов стоит? Попробуйте Dev-cpp от Orwell http://orwelldevcpp.blogspot.ru
0
gru74ik
Модератор
Эксперт CЭксперт С++
4348 / 1924 / 207
Регистрация: 20.02.2013
Сообщений: 5,107
Записей в блоге: 22
25.11.2016, 18:36 #3
слон11, ошибка использовать одновременно директиву using и имена переменных навроде array. Кроме того, для выполнения этого кода необходимо включить поддержку стандарта C++11. Dev++ не самая лучшая среда разработки, если её вообще можно называть таковой. Я бы порекомендовал не мучаться и скачать хотя бы Code::Blocks.

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
#include <iostream>
#include <vector>
#include <random>
#include <algorithm>
 
int main()
{
    std::default_random_engine generator;
    std::uniform_int_distribution<int> distribution( -3, 8 );
 
    std::vector<int> arr( 20 );
 
    std::generate
        (
            arr.begin(),
            arr.end(),
            [&distribution, &generator]
                ()
            {
                return distribution( generator );
            }
        );
 
    std::cout << "Array: ";
    for( const auto x : arr )
        std::cout
            << x
            << " ";
 
    std::cout
        << "\nElements equal to zero: "
        << std::count_if
            (
                arr.begin(),
                arr.end(),
                []
                    ( auto x )
                {
                    return x == 0;
                }
            );
 
    int sum = 0;
    for_each
        (
            min_element
                (
                    arr.begin(),
                    arr.end()
                ),
            arr.end(),
            [&sum]
                ( int x )
            {
                sum += x;
            }
        );
 
    std::cout
        << "\nSum of elements that are after minimal element is: "
        << sum
        << "\n\n";
 
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.11.2016, 18:36
Привет! Вот еще темы с ответами:

Найти длину самой длинной последовательности подряд идущих элементов массива, равных нулю - C++
Задан одномерный массив. Найти длину самой длинной последовательности подряд идущих элементов массива,равных нулю. Написал на паскале нужно...

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

Вычислить количество элементов в массиве, равных нулю - C++
Помогите пожалусто через 2 часа в институт пилить а мне зачет сделать нужно не в службу а в дружбу выручите

Двумерный массив. Определить количество равных нулю элементов - C++
В массивах X1..X5, Y1..Y7, Z1..Z14 определить количество равных нулю элементов. Если их больше половины, то первый и последний элементы...


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

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

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