cp58
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Torlin Цитата: Помогите с решением задачи на языке С++ | C++11 Код: std::array<float, 10> a{{9.1, -2.3, 1.3, 9.3, -1.3, 9.8, 2.6, -2.9, -6.5, 4.3}}; std::cout << std::accumulate(a.begin(), std::max_element(a.begin(), a.end()), 0.0, [](float sum, float arg){return arg > 0 ? sum+arg : sum;}) << std::endl; | C++98 Код: struct sum_op { float operator()(float sum, float arg){return arg > 0 ? sum + arg : sum;} } sum_op; float na[] = {9.1, -2.3, 1.3, 9.3, -1.3, 9.8, 2.6, -2.9, -6.5, 4.3}; std::vector<float> a(na, na + sizeof(na) / sizeof(na[0])); std::cout << std::accumulate(a.begin(), std::max_element(a.begin(), a.end()), 0.0, sum_op) << std::endl; | |