как сделать чтобы программа отображала имя ученика с наивысшей средней оценкой

//Входные данные
//Name1 7 6 5 5 5
//Name2 8 7 6 9 9
//Name3 9 9 9 9 8
//Name4 7 7 7 7 6
//Name5 9 9 9 9 9
//ответ .. Name5

    #include <iostream>
    #include <vector>
    #include <string>
    
    class Pupil
    {
    private:
        std::string m_name;
        double m_lesson1;
        double m_lesson2;
        double m_lesson3;
        double m_lesson4;
        double m_lesson5;
    public:
        Pupil( std::string name, double lesson1, double lesson2, double lesson3, double lesson4, double lesson5)
            : m_lesson1(lesson1)
            , m_lesson2(lesson2)
            , m_lesson3(lesson3)
            , m_lesson4(lesson4)
            , m_lesson5(lesson5)
        {}
        ~Pupil() {}
        double rating();
    
        std::string getName()
        {
            return m_name;
        }
        
    };
    double Pupil::rating()
    {
        return (m_lesson1 + m_lesson2 + m_lesson3 + m_lesson4 + m_lesson5)/5;
    }
    int main()
    {
        int N = 0;
        std::cin >> N;
        std::vector<Pupil> pupilVec;
        for(int i = 0; i < N; ++i) {
            std::string name;
            double lesson1 = 0;
            double lesson2 = 0;
            double lesson3 = 0;
            double lesson4 = 0;
            double lesson5 = 0;
            std::cin >> name >> lesson1 >> lesson2 >> lesson3 >> lesson4 >> lesson5;
            
            pupilVec.push_back(Pupil(name, lesson1, lesson2 , lesson3 , lesson4 , lesson5));
        }
        Pupil max = pupilVec[0];
        for(int i = 1; i < pupilVec.size(); ++i) {
            if(pupilVec[i].rating() > max.rating()) {
                max = pupilVec[i];
            }
        }
        std::cout << max.getName()<<  '\n';
    }

Ответы (1 шт):

Автор решения: Егор Филатов

Добавьте в список инициализации членов конструктора строчку m_name(name). То бишь:

Pupil( std::string name, double lesson1, double lesson2, double lesson3, double lesson4, double lesson5)
            : m_name(name)
            , m_lesson1(lesson1)
            , m_lesson2(lesson2)
            , m_lesson3(lesson3)
            , m_lesson4(lesson4)
            , m_lesson5(lesson5)
        {}
→ Ссылка