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

Произведение элементов массива, расположенных между максимумом и минимумом - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычисление объема тэтраэдра по его стороне http://www.cyberforum.ru/cpp-beginners/thread169497.html
Доброго времени суток, требовалось написать программу на вычисление объема тетраэдра по его стороне, написал, и защиту от дурака туда всунул, только вот не хочет компилиться..подскажите, пожалуйста,...
C++ Программа с разветвлением Уважаемые, нужно написать программу в которой предусмотреть введение аргумента и вывода значения вычисленной функции в каждой ветке алгоритма; На рисунке 3 столбчик: Аргумент l (L); ... http://www.cyberforum.ru/cpp-beginners/thread169487.html
C++ Программа С++,дано.
На соревнованиях по фигурному катанию оценки заносятся в ком-пьютер. Составить программу для вывода на экран лучшего ре-зультата после каждого выступления фигуристов.
Исправить ошибки в программе C++
Помогите пожалуйста исправить ошибки в программе: #include <iostream> #include <conio.h> #include <pthread.h> #include <semaphore.h> int N; int X; int Y; int Q; const N=20;
C++ Классы http://www.cyberforum.ru/cpp-beginners/thread169455.html
Привет всем программистам. Вот уже полгода учу С++ и как бы все было относительно понятно (почти))), но вот щас дошел до классов и ничерта не понимаю как и что там. Может кто нить помочь на...
C++ Найти ошибку в данном примере #include <math.h> #include <iostream> using namespace std; int main() { int n, a; cin >> n; int sum = 1/a; for (int i=1; i<=n; i++) { подробнее

Показать сообщение отдельно
CyBOSSeR
Эксперт С++
2303 / 1673 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
23.10.2010, 14:10
Seo-optimist, решение с помощью boost::lambda:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <algorithm>
#include <iostream>
#include <numeric>
#include <cstddef>
#include <boost/lambda/lambda.hpp>
 
int main() {
  const int         arr[] = { 3, 9, 5, 4, 5, 2 };
  const std::size_t size  = sizeof(arr) / sizeof(arr[0]);
  
  const int* min = std::min_element(arr, arr + size);
  const int* max = std::max_element(arr, arr + size);
  
  if (min > max)
    std::swap(min, max);
    
  std::cout << std::accumulate(min, max, 1, boost::lambda::_1 *= boost::lambda::_2) << std::endl;
 
  return 0;
}
Результат: http://liveworkspace.org/code/f2d526...9b03299cdc75c9
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru