Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

distance

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
/*
    Даны натуральные числа n,а1...аn.
    Определить количество членов аk последовательности а1...аn, имеющих четные порядковые номера и являющихся нечетными числами.
*/
 
// инклуды см. выше
 
void f2()
{
    namespace lm = boost::lambda;
 
    int arr[] = {5, 1, 10, 20};
    const size_t N = sizeof(arr) / sizeof(arr[0]);
    std::vector<int> v(arr, arr + N);
    int position = 1; // порядковый номер начинается с 1
    int count = 0;
 
    // фнуктор выписывать лень, в примере показан способ  
    // только через lambda-функцию
    std::for_each(v.begin(), v.end(),
        (
            // отлавливаем чётную позицию и нечётный элемент
            lm::if_(!(lm::var(position)++ & 1) && (lm::_1 & 1))
            [ lm::var(count)++ ]
        )
    );
    printf("count=%d\n", count);
}

Всего записей: 878 | Зарегистр. 28-03-2004 | Отправлено: 17:07 17-04-2007
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru