{}
run-icon
main.cpp
#include <algorithm> #include <iostream> #include <numeric> #include <string> #include <vector> struct User { std::string name; int age; bool active; }; int main() { std::vector<User> users = { {"Alice", 30, true}, {"Bob", 25, false}, {"Charlie", 35, true}, {"Diana", 28, true}, {"Eve", 22, false}, }; std::vector<User> active; std::copy_if(users.begin(), users.end(), std::back_inserter(active), [](const User& u) { return u.active; }); std::sort(active.begin(), active.end(), [](const User& a, const User& b) { return a.name < b.name; }); for (size_t i = 0; i < active.size(); i++) { std::cout << active[i].name; if (i < active.size() - 1) std::cout << ", "; } std::cout << std::endl; double avg = std::accumulate(active.begin(), active.end(), 0.0, [](double sum, const User& u) { return sum + u.age; }) / active.size(); std::cout << "Průměrný věk: " << avg << std::endl; return 0; }
Output