Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
lemegeton
2933 / 1362 / 467
Регистрация: 29.11.2010
Сообщений: 2,725
31.03.2011, 01:43

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

31.03.2011, 01:43. Просмотров 4235. Ответов 2
Метки (Все метки)

Лучший ответ Сообщение было отмечено Stas31 как решение

Решение

Дотянул до последнего?

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
#include <iostream>
#include <vector>
#include <iterator>
#include <algorithm>
#include <numeric>
#include <ctime>
#include <cstdlib>
#include <cmath>
 
struct Randomizer {
  Randomizer() { srand(time(NULL)); }
  int operator()() { return rand() % 11 - 5; }
};
 
bool IsZero(int value) { return value == 0; }
 
bool SortByAbs(int a, int b) { return (abs(a) < abs(b)); }
 
int main(int argc, char *argv[]) {
  std::vector<int> array(10);
  std::generate(array.begin(), array.end(), Randomizer());
  std::copy(array.begin(), array.end(),
            std::ostream_iterator<int>(std::cout, " "));
  std::cout << std::endl;
 
  // подсчет нулей
  int zero_count = count_if(array.begin(), array.end(), IsZero);
  std::cout << "Zeroes count: " << zero_count << std::endl;
 
  // сумма после минимума
  std::vector<int>::iterator min_element = std::min_element(array.begin(),
                                                            array.end());
  int sum_after_min = std::accumulate(min_element + 1, array.end(), 0);
  std::cout << "First minimum: " << *min_element
            << ". Sum: " << sum_after_min << std::endl;
 
  // упорядочить по возрастанию модулей
  std::sort(array.begin(), array.end(), SortByAbs);
 
  std::copy(array.begin(), array.end(),
            std::ostream_iterator<int>(std::cout, " "));
  std::cout << std::endl;
  return 0;
}

http://www.cyberforum.ru/cpp-beginners/thread709379.html
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2011, 01:43
Готовые ответы и решения для C++ Вычислить количество элементов массива, равных нулю:

Найти количество элементов массива равных нулю
Дан одномерный массив заданный генератором случайных чисел. Найти количество...

Найти количество элементов массива равных нулю
С одномерным массивом, состоящим из n вещественных элементов, произвести...

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

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

Вычислить произведение элементов массива не равных нулю
Дано одномерный массив действительных чисел X с количеством элементов n....

2
Вычислить количество элементов массива, равных нулю C++   Следующее сообщение темы 
Другие темы раздела
C++ sqrt http://www.cyberforum.ru/cpp-beginners/thread266862.html
Как в с прошрамме написать sqrt(2-x)? У меня sqrt не считает, может есть еще вариант как написать данное выражение?
C++ Найти наибольшее количество подряд идущих цифр в строке Дан текст.Найти наибольшее количество подряд идущих цифр. ПОМОГИТЕ ПОЖАЛУЙСТА... http://www.cyberforum.ru/cpp-beginners/thread266856.html
C++ условие: с файла по-байтно считываются символы (while (от первого до последнего символа))
помогите загнать в цикл. а то совсем заморочился уже. условие: с файла по-байтно считываются символы (while (от первого до последнего символа)) как в этот цикл впихнуть следующие: считаем...
C++ Длинная арифметика
Как сделать типы длинных чисел, например, знаковое 256-ти битное целое и 256-ти битное вещественное с 224-х битной мантиссой и 32-х битным порядком? Добавлено через 1 минуту Надо поддерживать всю...
C++ натуральные числа http://www.cyberforum.ru/cpp-beginners/thread266793.html
Вывести на печать все натуральные числа, меньшие заданного N, сумма квадратов цифр которых кратна 7. Определите 3 цифры номера автомобиля, если известно, что получившееся число кратно 2, 5 и 7, а...
C++ Что я неправильно сделал? #include <stdio.h> #include <math.h> int main(void) { long n; /* параметр ряда */ double dbln; /* параметр ряда в форме с плавающей точкой */ double sum=0; /*... подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru