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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Структуры и файлы. Ввод структурированных данных и их запись в файл http://www.cyberforum.ru/cpp-beginners/thread1123800.html
Составить программу, которая с использованием библиотеки классов языка С++ для работы с файлами выполняет следующие действия: – ввод структурированных данных и их запись в файл; – чтение данных из...
C++ Ошибка в коде. Программа расчета броска камня Программа расчета броска камня по Методу Рунге-Кутта. Выдает ошибку в классе вектор, не получается ее исправить. Программа в результате вычислений должна вывести следующие данные: t=0.050000 ... http://www.cyberforum.ru/cpp-beginners/thread1123769.html
Игра крестики-нолики не пойму где ошибка C++
void instryk() { cout << "\t\tИгра крестики-нолики"; cout << "Правила игры\n"; cout << "Играют 2 игрока\n"; cout << "Пока один из игроков не соберёт выигрышную комбинацию\n"; cout <<...
Передача в параметр многомерного массива произвольного размера C++
Пусть, например, имеется функция void Gauss(double **a, double *b, size_t n, double *x) { size_t i; size_t j; size_t k; double s; double kof; for (i=0; i<n; ++i) { for (j=i+1; j<n;...
C++ Преобразовать массив, прибавив к четным числам первый элемент http://www.cyberforum.ru/cpp-beginners/thread1123737.html
Не получается решить задачу можете помочь что как нужно? Дан целочисленный массив размера N. Преобразовать его, прибавив к четным числам первый элемент. Первый элемент массива не изменять. ...
C++ Swap для двунаправленного списка Поменять просто значения узлов, не интересно. Я запутываюсь с ссылками. элементы могут быть заглавными или последними. struct node { int k; node *next; node *pred; }; подробнее

Показать сообщение отдельно
John Prick
803 / 736 / 145
Регистрация: 27.07.2012
Сообщений: 2,108
Завершенные тесты: 3
19.03.2014, 13:47
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
/*
 Напишите функцию, которая вычисляет кол-во отрицательных
 элементов между максимальным и минимальным элементами
 массива. Массив является аргументом функции.
 Функция возвращает вычисленное значение.
*/
 
#include <iostream>
#include <algorithm>
#include <numeric>
#include <stdlib.h>
#include <ctime>
 
int get_rand(void) { return rand() % 100 - 50; }
 
int count_negative_between_min_and_max(int * arr, int size)
{
    int * min = std::min_element(arr, arr + n);
    int * max = std::max_element(arr, arr + n);
    int count = std::count_if(std::min(min, max) + 1, std::max(min, max),
        std::bind2nd(std::less<int>(), 0));
 
    std::cout <<
        "Минимальный:\t" << *min << '\n' <<
        "Максимальный:\t" << *max << '\n' <<
        "Количество:\t" << count << '\n';
    return count;
}
 
int main(void)
{
    setlocale(0, "rus");
    srand(static_cast<unsigned int>(time(NULL)));
 
    const int n = 30;
    int arr[n];
    std::generate(arr, arr + n, get_rand);
 
    std::cout << "Исходный массив:\n";
    std::copy(arr, arr + n, std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
 
    int count = count_negative_between_min_and_max(arr, n);
 
    system("pause");
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru