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

Функция, которая возвращает индекс первого элемента - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нумерация месяца http://www.cyberforum.ru/cpp-beginners/thread822023.html
Доброго дня. Спорим с коллегой с какого числа начинать нумеровать месяца с 0 или с 1. Хотелось бы услышать мнения на этот счет
C++ криво работает коеструктор копии производного класса #include <iostream> using namespace std; #include <conio.h> class building { protected: int **A, level, flat; public: building(){}; building(int l, int f); http://www.cyberforum.ru/cpp-beginners/thread822016.html
Ханойская башня- тесты C++
Переместить m дисков с одного из трех стержней на другой, соблюдая: 1) диски можно перемещать с одного стержня на другой только по одному; 2) нельзя класть больший диск на меньший. Вход: текстовый файл, в котором записано число m. Выход: текстовый файл, описывающий перемещения дисков. Пример: in.txt: 2; out.txt: 1->2; 1->3; 2->3 Тестирование: протестировать программу на следующих данных...
C++ MPI передача матриц в группу процессов
Нужно передать 9 матриц в группу процессов. Использовал MPI_Scatter для предварительно созданной группы. Вылетало с ошибкой об неправильном коммуникаторе. Решил использовать MPI_COMM_WORLD. Но теперь просто на принимающей стороне массив не содержит правильных данных. Как можно передать 9 матриц из основного процесса в другие? Т.е. матрица 1 к процессу 1, матрица 2 процессу 2...
C++ как усовершенствовать студ.актив при помощи С++ http://www.cyberforum.ru/cpp-beginners/thread821978.html
Учусь на первом курсе, если честно, не особо смыслю в программировании :) Веду активную жизнь, состою в студенческом активе, по этому поводу препод меня подкалывает постоянно!Так вот, можете подсказать, как усовершенствовать студ.актив при помощи С++ :) Жду самых интересных идей!Заранее спасибо!
C++ Дописать в конец a.jpeg некий секретный текст. Вывести этот текст на экран Как мне стало известно все .jpeg оканчиваются на маркер FFD9. Его мы и будем искать при выводе результата. Сначала откроем файл на дополнение "ab". Дополним Выглядеть функция будет так: void add(???????) { int n; char a; FILE *f; f = fopen("a.jpg","ab"); printf("\n Input n: "); scanf("%d",&n); printf("Input secret text: \n"); подробнее

Показать сообщение отдельно
DiffEreD
1429 / 766 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
29.03.2013, 13:53     Функция, которая возвращает индекс первого элемента
Шаблоном:
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
#include <iostream>
#include <array>
#include <functional>
#include <vector>
#include <algorithm>
#include <iterator>
 
template<typename T, typename U>
int index(const T* ar, const unsigned size, const U val)
{
    auto pos = std::find_if(ar, ar+size, std::bind(std::greater<T>(), val, std::placeholders::_1));
    return (pos == ar+size) ? -1 : std::distance(ar, pos);
}
 
int main() 
{
    const unsigned size = 5;
    
    const int N = 9;
    
    std::array<int, size> ar1 = {16,8,3,4,1};
    int ar2[size] =             {18,14,16,16,13};
    std::vector<double> v =     {12.3, 12.6, 13.1, 8.02};
    std::cout<<"in ar1: "<<index(ar1.data(), size, N)<<"\nin ar2: "<<index(ar2, size, N)<<"\n"
             <<"in v: "<<index(v.data(), v.size(), N)<<"\n";
    
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru