cuteness2.cpp

September 11, 2020 ยท View on GitHub

#include #include #include #include

struct cat { double cuteness() const { return softness_ * temperature_ * roundness_ * fur_amount_ - size_; } std::string name_; double softness_; double temperature_; double size_; double roundness_; double fur_amount_; };

int main() { std::vector cats = { {"Tigger", 5, 5, 5, 5, 5}, {"Simba", 2, 9, 9, 2, 7}, {"Muffin", 9, 4, 2, 8, 6}, {"Garfield", 6, 5, 7, 9, 5}};

auto cutest_cat = *std::max_element(cats.begin(), cats.end(),
                                    [](const cat& c1, const cat& c2) {
                                        return c1.cuteness() < c2.cuteness();
                                    });

std::cout << cutest_cat.name_ <<
    " is happy and sleepy. *purr* *purr* *purr*" << std::endl;

}