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

lower/upper bound - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Получить список имен файлов в порядке возрастания количества слов в них http://www.cyberforum.ru/cpp-beginners/thread798618.html
Задание: Имеется три заданных текстовых файлов. Получить список имен файлов в порядке возрастания количества слов в них. Результат работы программы (вывод) поместить в отдельный текстовый файл ...
C++ Не запускается Exe файл приложения на других ПК Написал программу с использованием openCV, нужно чтобы она запускалась на других ПК. Скопировал в папку к экзешнику необходимые библиотеки, но на всех тестируемых компах прога вылетает с ошибкой об... http://www.cyberforum.ru/cpp-beginners/thread798616.html
Программа перевода чисел C++
Здравствуйте :) я новичок в с++ и сейчас пытаюсь написать программу для перевода восьмиразрядного двоичного числа в десятичное. столкнулся с проблемой. помогите пожалуйста char dv; cout...
C++ Добавление строк динамической матрице
В основной программе описать матрицу целых чисел размерности mxn, m<n. Размерность с клавы запрашивать. Элементы матрицы задать случайным образом. Написать функцию, которая добавляет в матрицу (n-m)...
C++ Определить, является ли заданная матрица ортонормированной http://www.cyberforum.ru/cpp-beginners/thread798587.html
Помогите пожалуйста написать программу на С++. Определить,является ли заданная матрица ортонормированной, т.е. равно ли скалярное произведение каждой пары различных строк (столбцов)нулю.
C++ Дана целочисленная прямоугольная матрицы. Определить: Дана целочисленная прямоугольная матрицы. Определить: 1) количество отрицательных элементов в тех строках, которые содержат хотя бы один нулевой элемент. 2) номер строк и столбцов всех седловых... подробнее

Показать сообщение отдельно
DU
1483 / 1129 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
02.03.2013, 14:59
в вашем случае подходящий элемент - восьмерка. использовать нужно скорее std::min_element с предикатом.
с бустом или с новым стандартом это будет менее многословно чем по олдскульному. вот олдскульный вариант:
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
#include <algorithm>
#include <iostream>
 
class Pred
{
    int m_x;
 
public:
    Pred(int x)
        : m_x(x)
    {
    }
 
    bool operator () (int lhs, int rhs) const
    {
        return abs(lhs - m_x) < abs(rhs - m_x);
    }
};
 
int main()
{
    int a[] = {-10, -4, 8, 10};
    const int x = 5;
    const unsigned arraySize = sizeof(a) / sizeof(*a);
    int* minA = std::min_element(a, a + arraySize, Pred(x));
    const unsigned minAindex = std::distance(a, minA);
    std::cout << "min(|ai - " << x << "|) = " << "a[" << minAindex << "] = " << a[minAindex] << std::endl;
 
    return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru