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

В одномерном массиве, состоящем из вещественных элементов, вычислить: - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача массива. (умножение положительных элементов массива; сумма элементов...) http://www.cyberforum.ru/cpp-beginners/thread809936.html
помогите пожалуйста, я не могу решить вот такую задачу! В одномерном массиве, состоящем из n действительных элементов, вычислить: • умножения положительных элементов массива; • сумму...
C++ Найти минимальное значение элементов массива Найти минимальное значение элементов массива. Вывести на дисплей полученное значение. После этого изменить исходный мас-сив, выполнив указанную операцию для всех его элементов: если среди всех... http://www.cyberforum.ru/cpp-beginners/thread809930.html
C++ Дан целочисленный массив размера N
Дан целочисленный массив размера N. Вывести вначале все содержащиеся в данном массиве четные числа в порядке возрастания их индексов, а затем — все нечетные числа в порядке убывания их индексов. ...
C++ Объясните код
Обьясните что обозначают и что делают различные команды и знаки в следующей программе. #include "stdafx.h" #include <iostream> using namespace std; struct Mobile { char name; char color; ...
C++ Нужен совет - как сделать circular linked list? http://www.cyberforum.ru/cpp-beginners/thread809887.html
Доброго всем времени суток!!! У меня программа которая считает queue, мне необходимо сделать circular linked list. Прошу помоши!!!!! header file: // TEMPLATE CLASS PROVIDED: queue<Item> (a...
C++ Считывание с бинарного файла Программа должна уметь считать данные с текстового файла и бинарного файла, записывать в бинарный файл. Но при считывании из бинарного выводит строковую переменную (body) если printf то "7700116"... подробнее

Показать сообщение отдельно
Ev[G]eN
iOS/Android Developer
Эксперт С++
5097 / 1535 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
16.03.2013, 16:21
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
#include <functional>
#include <algorithm>
#include <iterator>
#include <iostream>
#include <numeric>
#include <random>
#include <array>
#include <ctime>
 
int main ()
{
    auto randomGeneration = std::bind(std::uniform_real_distribution <> (-25, 25),
                                      std::mt19937 (time(nullptr)));
    const int arraySize = 10;
    std::array <double, arraySize> array;
    std::cout << "Array: " << std::endl;
    std::generate(array.begin(), array.end(), randomGeneration);
    std::copy(array.begin(), array.end(), std::ostream_iterator <double> (std::cout, "   "));
 
    int index = 0;
    std::cout << std::endl << std::endl << "Sum of positive elements on even positions: ";
    std::cout << std::accumulate(array.begin(), array.end(), 0.0, [&index] (double currSum, double currNum) -> double {
        if (!(index++ % 2) && (currNum > 0))
            currSum += currNum;
        return currSum;
    });
    std::cout << std::endl << "Produce of minimal and maximal indexes: ";
    std::cout << (std::distance(array.begin(), std::min_element(array.begin(), array.end())) + 1 * std::distance(array.begin(), std::max_element(array.begin(), array.end())) + 1);
 
    int fPositiveIndex = std::distance(array.begin(), std::find_if(array.begin(), array.end(), std::bind2nd(std::greater_equal <double> (), 0.0)));
    int lNegativeIndex = std::distance(array.cbegin(), std::find_if(array.crbegin(), array.crend(), std::bind2nd(std::less <double> (), 0.0)).base());
    std::swap(array.at(fPositiveIndex), array.at(lNegativeIndex - 1));
    std::cout << std::endl << std::endl << "New array: " << std::endl;
    std::copy(array.begin(), array.end(), std::ostream_iterator <double> (std::cout, "   "));
 
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru