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

Найти два элемента, стоящих друг за другом, сумма которых больше максимального числа массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сумма строк http://www.cyberforum.ru/cpp-beginners/thread1046081.html
если сток меньше, чем столбцов, все нормально. Наоборот выдает ошибку. Что нужно изменить? Матрицу ввожу вручную // Находим сумму элементов строк отсортированного массива cout << "Summa...
C++ Способ передачи параметров по адресу Даны два вещественных числа х, y. Составить программу, содержащую функцию, которая вычисляет сумму квадратов и квадрат суммы этих чисел. http://www.cyberforum.ru/cpp-beginners/thread1046079.html
Разработать шаблон класса C++
Разработать шаблон класса TList – список (одно-связный либо двусвязный); в качестве параметра шаблона использовать тип хранимых в списке данных. Обеспечить функциональность данного класса,...
C++ элементы массива
необходимо поменять местами максимальный минимальный элемент массива //--------------------------------------------------------------------------- #include <iostream> #include <cmath> #include...
C++ исправьте ошибки http://www.cyberforum.ru/cpp-beginners/thread1046075.html
программа должна принимать матрицу размерности nxn, проверить каждую строку на упорядоченность ее элементов по убыванию. после чего, если таких строк хотя бы 2, то поменять местами их диагональные...
C++ система счисления. дополнение Написал програму, которая переводит с 10 в 2-ю систему счисления. Как сделать чтобы после вывода результата, снова появлялась строка Vvedite 4uslo и снова считало, и так 5 раз, после етого нужно... подробнее

Показать сообщение отдельно
outoftime
║XLR8║
510 / 432 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
18.12.2013, 08:43
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
#include <iostream>
#include <iterator>
#include <algorithm>
 
int main()
{
    const int n = 22;
    int a[n];
    // нахождение максимаьлного элемента
    // смотрите std::max_element, std::begin, std::end
    int max = *std::max_element(std::begin(a), std::end(a));
    // проход по всех элементах массива начиная со второго
    // смотрите std::for_each, std::next
    std::for_each(std::next(std::begin(a)), std::end(a), 
        // проброс переменной max в область видимости лямбды
        // смотрите лямбды в C++11
        [&max](const int &value) {
            // получение предыдущего элемента массива
            // смотрите std::prev
            int prev = *std::prev(&value);
            
            if (value + prev > max) {
                // вывод значений в стандартный поток
                // смотрите std::cout, std::endl
                std::cout << value << " " << prev << " " << max << std::endl;
            }
        }
    );
   
    return EXIT_SUCCESS;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru