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

Решение для разминки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать функцию, которая сравнивает целых числа и возвращает результат сравнения в виде одного из символов: <,> или = http://www.cyberforum.ru/cpp-beginners/thread163525.html
Написати функцію, яка порівнює цілих числа і повертає результат порівняння в вигляді одного з знаків: <, > або =. Написать функцию, которая сравнивает целых числа и возвращает результат сравнения...
C++ Алгоритм Форда-Беллмана Народ если есть у кого нибудь исходник выложите пожалуйста очень надо. А то везде одно и то же... И ничего не понятно толком=) http://www.cyberforum.ru/cpp-beginners/thread163521.html
C++ Поиск строки в файле и её перезапись
Здравствуйте, я хочу чтобы моя программа находила строку в файле config.cfg и перезаписывала её. Начало строки никогда не меняется!Например:name "nickname" то,что в ковычках нужно чтобы...
Фальшивый минус C++
Попробовал скомпилировать исходник к книге Р.Лафоре "Объектно-ориентированное программирование в C++". Ошибок в исходниках к этой книге очень много. Компилятор выдал error: stray '\226' in program....
C++ программамы языки для создания сценариев ? http://www.cyberforum.ru/cpp-beginners/thread163502.html
Скажите что действительно есть программы которые помогают написать программный код ? Что то вроде сценария для программ !
C++ Очередь Привет всем. Я тут решаю в общем то простое упражнение - нужно проверить переполнение и опустошение очереди. Есть у меня небольшая трудность: как выйти из функции Decueue() (англ.вывести из... подробнее

Показать сообщение отдельно
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
04.09.2010, 21:41
Цитата Сообщение от Aleksandr1 Посмотреть сообщение
2.Дан массив случайных чисел в диапазоне от -20 до +20. Необходимо найти позиции крайних отрицательных элементов (самого левого отрицательного элемента и самого правого отрицательного элемента) и отсортировать элементы, находящиеся между ними.
Продолжаем удивлять преподавателей:
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
55
56
57
58
59
60
61
62
63
64
#include <iostream>
#include <iterator>
#include <algorithm>
#include <vector>
#include <functional>
#include <map>
#include <ctime>
#include <cstdlib>
#include <stdexcept>
 
template<class T>
std::pair<T, T> warmUp(std::vector<T>& vect)
{
    auto negative = [](int i)
    {
        return i < 0;
    };
    auto begin = std::find_if(vect.begin(), vect.end(), negative);
    auto last = [&]()
    {
        auto retIter = vect.end();
        for(auto it = vect.begin(); it != vect.end(); ++it)
            if(negative(*it))
                retIter = it;
        return retIter;
    };
    auto end = last();
    if((begin == vect.end()) || (end == vect.end()))
        throw(std::runtime_error("Bad array"));
    std::sort(begin + 1, end);
    std::pair<T, T> retval;
    retval.first = *begin;
    retval.second = *end;
    return retval;
}
 
int main(int argc, char* argv[])
{
    try
    {
        srand(static_cast<size_t>(time(NULL)));
        if(argc != 2)
            throw(std::runtime_error("Not enough arguments"));
        std::vector<int> ivec;
        size_t size = atoi(argv[1]);
        std::generate_n(std::back_inserter(ivec), size, []()
        {
            return rand() % 41 - 20;
        });
        std::cout << "Before:" << std::endl;
        std::copy(ivec.begin(), ivec.end(), std::ostream_iterator<int>(std::cout, " "));
        std::pair<int, int> limits = warmUp(ivec);
        std::cout << std::endl << "Sorting elements between first " 
            << limits.first << " and last " << limits.second << std::endl;
        std::copy(ivec.begin(), ivec.end(), std::ostream_iterator<int>(std::cout, " "));
        std::cout << std::endl;
    }
    catch(std::exception& e)
    {
        std::cerr << e.what() << std::endl;
        return 1;
    }
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru