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

Обработать одномерный массив согласно условию задачи - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Использование typedef с template http://www.cyberforum.ru/cpp-beginners/thread1846681.html
Не могу добавить шаблон typedef std::list<QueueElement> cont; typedef cont::iterator It;
C++ Разбить очень длинную строку по символу ";" есть строка, состоящая из очень большого количества символов.нужно все ее содержимое разбить на массив строк. разбивать по символу ';' substr тупо вылетает из-за того, что текст огромный strtok не... http://www.cyberforum.ru/cpp-beginners/thread1846674.html
C++ Подобрать оптимальный контейнер под задачу
Есть структура типа: struct Cell { int id; //..и много ещё чего } В общем, таких объектов такого типа очень много и частенько мне нужно получать указатель на этот объект по id.
C++ Чтение из файла
Доброго времени суток! Предстоит такая задача, дан файл, в котором записана дата и курс валюты (через пробел) в следующем виде: 21/09/2015 25,20 23/09/2015 25,10 и т.д. Необходимо считать...
C++ Произведение элементов массива, расположенных между максимальным и минимальным элементами http://www.cyberforum.ru/cpp-beginners/thread1846663.html
В динамическом массиве, состоящем из n вещественных величин. А. Сумму отрицательных элементов массива В. Произведение элементов массива, расположенных между максимальным и минимальным элементами...
C++ Работа с интервалами STL Привет всем. Вопрос по STL. Есть vector, заполненный данными и увеличенный до нужных размеров. Нужно "вставить" элемент в вектор, да так вставить, чтобы от той позиции, куда надо вставить, до... подробнее

Показать сообщение отдельно
Ferrari F1
595 / 486 / 99
Регистрация: 27.01.2015
Сообщений: 2,877
Записей в блоге: 1
Завершенные тесты: 1
12.11.2016, 15:45
Alex 434, вот, на скорую руку
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
#include <iostream>
#include <vector>
#include <cmath>
#include <algorithm>
#include <numeric>
using namespace std;
 
int main()
{
    size_t n(4), Max(0);
    signed* index(nullptr), *fst(nullptr), *scnd(nullptr), sum(0);
    //cin >> n;
    
    vector<signed> vec(n);
    for (auto& i : vec)
    {
        cin >> i;
        
        if (abs(i) > Max)
            Max = abs(i), index = &i;
            
        if (!fst && i > 0)
            fst = &i;
        else if (!scnd && i > 0)
            scnd = &i;
    }
    
    cout << "Max abs. element: " << *index << endl;
    
    if (fst && scnd)
    {
        sum = accumulate(fst, ++scnd, 0);
        cout << "Sum: " << sum << endl;
    }
    
    sort(vec.begin(), vec.end(),
    [] (const signed& arg1, const signed& arg2)
    {
        return abs(arg1) < abs(arg2);
    });
    
    auto&& temp = find_if(vec.begin(), vec.end(),
        [] (const auto& arg)
    {
        return arg;
    });
    
    if (temp != vec.end())
    {
        rotate(vec.begin(), temp, vec.end());
        for (const auto& i : vec)
            cout << i << ' ';
    }
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru