30 lines
663 B
C++
30 lines
663 B
C++
#include "break_continue.hpp"
|
|
|
|
namespace control_flow {
|
|
|
|
auto sum_positive(const std::vector<int>& data) -> int {
|
|
auto sum = 0;
|
|
for (const auto i : data) {
|
|
if (i > 0) sum += i;
|
|
}
|
|
return sum;
|
|
}
|
|
|
|
auto first_multiple_of(const std::vector<int>& data, const int divisor) -> int {
|
|
for (const auto i : data) {
|
|
if (i > divisor && i % divisor == 0) return i;
|
|
}
|
|
return -1;
|
|
}
|
|
|
|
auto collect_until_negative(const std::vector<int>& data) -> std::vector<int> {
|
|
std::vector<int> result;
|
|
for (const auto i : data) {
|
|
if (i < 0) break;
|
|
result.push_back(i);
|
|
}
|
|
return result;
|
|
}
|
|
|
|
} // namespace control_flow
|