replace_if меняет значение там, где унарный предикат возвращает true. Новое значение задают отдельным аргументом.">
Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpSpAgRf 86 of 696 menu
◀ ▶

Замена по условию в C++

Алгоритм replace_if меняет значение там, где унарный предикат возвращает true.

Новое значение задают отдельным аргументом. Так удобнее, чем ручной цикл с if. Запишем массив температур и обнулим отрицательные через лямбду:

#include <algorithm> #include <iostream> int main() { int temps[] = {5, -1, 3, -4}; std::replace_if(std::begin(temps), std::end(temps), [](int t) { return t < 0; }, 0); for (int t : temps) { std::cout << t << " "; } std::cout << "\n"; return 0; }

В векторе {2, 3, 4, 5} замените четные числа на 0 алгоритмом replace_if и выведите результат.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить