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

Подсчитать число повторяющихся отрицательных элементов массива A[n] - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Выражение должно быть допустимым для изменения левосторонним значением http://www.cyberforum.ru/cpp-beginners/thread1757661.html
struct ITEM { struct { char N; char A; char S; } NAS; char vers; }; struct LIST {
C++ Заменить все заглавные буквы, входящие в текст, на соответствующие малые не могу сделать ету программу, сделал только второе, а первое никак не получаеться... А)заменяет все заглавные буквы, входящие в текст на соответствующие малые Б)выводит на экран самое длинное слово #include <stdio.h> #include <stdlib.h> #include <string.h> #include <conio.h> int main() { setlocale(0,""); printf("\n Input String: "); http://www.cyberforum.ru/cpp-beginners/thread1757652.html
Написать интерпретатор логических выражений с построением таблицы четверок и выполнить ее C++
Написать интерпретатор логических выражений с построением таблицы четверок и выполнить ее. Считать, что выражения включают в себя только цифры от 0 до 9, переменные состоят только из 1 символа, количество вложенных скобок и операций не ограничено. Подскажите пожалуйста как тут и что делать, по возможности ссылки примеров, заранее благодарен
Разыменовать указатель C++
Пишу класс Train, и сейчас подсчитываю количество пассажиров. Создал указатель суммирования, доступился через цикл к количеству пассажиров и суммирую. Но потом не могу вывести значения, выводятся только адреса, а когда пишу cout << *sumPassengers << endl; вылетает ошибка. Помогите пожалуйста! void CarWithTheMostPassengers() { int* sumPassengers = new int; for (int i = 0; i <...
C++ Задача о распределении участников экспедиции по плотикам http://www.cyberforum.ru/cpp-beginners/thread1757606.html
Месклиниты собрались в экспедицию на край света. У них есть корабль, состоящий из N × M плотиков, связанных между собой. У каждого плотика есть своя грузоподъемность, а у каждого месклинита – своя масса. На каждом плотике может находиться не более одного месклинита. Если грузоподъемность выбранного плотика меньше массы месклинита, то бедный месклинит утонет при посадке. Руководитель экспедиции...
C++ Вывести сумму чисел из набора, расположенных между последними двумя нулями Дано целое число N и набор из N целых чисел, содержащий по крайней мере два нуля. Вывести сумму чисел из данного набора, расположенных между последними двумя нулями (если последние нули идут подряд, то вывести 0). подробнее

Показать сообщение отдельно
HighPredator
5464 / 1830 / 338
Регистрация: 10.12.2010
Сообщений: 5,412
Записей в блоге: 3
08.06.2016, 11:58     Подсчитать число повторяющихся отрицательных элементов массива A[n]
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
#include <iostream>
#include <vector>
#include <map>
#include <algorithm>
 
// comparator
bool IsNonNegative(const int a)
{
  return (a >= 0);
}
 
size_t CountRepeatingNegatives(int arr[], const size_t n)
{
  std::vector<int> vec(n);
  vec.assign(arr, arr + n);
 
  // deleting all non-negative elements
  vec.erase(std::remove_if(vec.begin(), vec.end(), IsNonNegative));
 
  // constructing map from remaining
  std::map<int, int> counts;
  for (int i = 0; i < vec.size(); i++) counts[vec[i]]++;
 
  size_t result = 0;
 
  // summing all counts
  for (auto it = counts.cbegin(); it != counts.cend(); ++it)
  {
    if (it->second > 1) result += it->second;    
  }
 
  return result;
}
 
int CountMinMaxDelta(int arr[], const size_t n)
{
  return *std::max_element(arr, arr + n) - *std::min_element(arr, arr + n);
}
 
int main()
{
  int a[] = {-1, -2, -3, -1, 0, -2, -4, -4, 100, 200, 300, 400};
 
  std::cout << "Repeating negatives count = " <<CountRepeatingNegatives(a, sizeof(a) / sizeof(*a))
    << ", max - min =  " << CountMinMaxDelta(a, sizeof(a) / sizeof(*a)) << std::endl;
 
  return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru