Skip to content

проект2 #725

Description

@mihailbar7-dot

грамотно ли написан следующий код:
#include
#include
#include
#include

using namespace std;

struct Student {
string name;
vector grades;
};

// Функция для определения успеваемости
string determinePerformance(const vector& grades) {
bool hasFive = false;
bool hasFour = false;
bool hasThree = false;
bool hasTwo = false;

for (int grade : grades) {
    if (grade == 5) hasFive = true;
    if (grade == 4) hasFour = true;
    if (grade == 3) hasThree = true;
    if (grade == 2) hasTwo = true;
}

if (hasTwo) return "Угроза отчисления";
if (hasThree) return "Надо стараться лучше";
if (hasFive && !hasFour) return "Молодец";
if (hasFive && hasFour) return "Хорошо";
if (hasFour && !hasFive) return "Неплохо";
return "У вас есть стипендия";

}

// Функция для вычисления среднего балла
double calculateAverage(const vector& grades) {
double sum = 0;
for (int grade : grades) {
sum += grade;
}
return sum / grades.size();
}

int main() {
// Данные студентов
vector students = {
{"Иванов Иван", {5, 5, 5, 4}},
{"Максимов Максим", {4, 3, 4, 4}},
{"Андреевич Андрей", {3, 3, 5, 5}}
};

// Вывод информации о каждом студенте
for (const auto& student : students) {
    cout << "Имя: " << student.name << endl;
    cout << "Оценки: ";
    for (int grade : student.grades) {
        cout << grade << " ";
    }
    cout << endl;
    cout << "Средний балл: " << calculateAverage(student.grades) << endl;
    cout << "Успеваемость: " << determinePerformance(student.grades) << endl;
}

return 0;

}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions