Страницы

Поиск по вопросам

среда, 19 декабря 2018 г.

Как найти произведение всех чисел в векторе?

Подскажите, есть ли такая функция для вектора целых чисел?


Ответ

Да, почти. Есть функция, которая умеет сворачивать (fold). Ей нужно передать два дополнительных параметра - начальное значение (в случае умножения это 1, это логично) и что делать с элементами (умножать). Вот код #include // std::cout #include // std::multiplies #include // std::accumulate #include
int main () { int init = 1; std::vector numbers = {10,20,30};
std::cout << std::accumulate( numbers.begin(), // начало для умножения numbers.end(),// конец для умножения init,// начальное значение std::multiplies());// готовая функция умножения. std::cout << '
';
return 0; }

Комментариев нет:

Отправить комментарий