Filage

Struct3

Mar 4th, 2024
797
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.49 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. struct Student {
  7.     string name;
  8.     string secondname;
  9.     string surname;
  10.     int age;
  11.     int course;
  12.     int grade[3];
  13. };
  14.  
  15. void inputStudent(Student &student) {
  16.     cout << "Введите имя студента: ";
  17.     cin >> student.name;
  18.     cout << "Введите фамилию студента: ";
  19.     cin >> student.secondname;
  20.     cout << "Введите отчество студента: ";
  21.     cin >> student.surname;
  22.     cout << "Введите возраст студента: ";
  23.     cin >> student.age;
  24.     cout << "Введите курс студента: ";
  25.     cin >> student.course;
  26.     cout << "Введите оценки студента по трем предметам студента: ";
  27.     for (int i = 0; i < 3; i++)
  28.         cin >> student.grade[i];
  29. }
  30.  
  31. void outputStudent(Student &student){
  32.     cout << "ФИО: " << student.name << " " << student.secondname << " " << student.surname;
  33.     cout << "Возраст: " << student.age;
  34.     cout << "Курс: " << student.course;
  35.     cout << "Оценки: ";
  36.     for (int i = 0; i < 3; i++)
  37.         cout << student.grade[i] << " ";
  38. }
  39.  
  40. float avarageGrade(Student student[], int course, int subject, int size) {
  41.     float sum = 0, count = 0;
  42.     for (int i = 0; i < size; i++) {
  43.         if (student[i].course == course) {
  44.             sum += student[i].grade[subject - 1];
  45.             count++;
  46.         }
  47.     }
  48.     if (count > 0) {
  49.         return sum / count;
  50.     }
  51.     else {
  52.         return 0;
  53.     }
  54. }
  55.  
  56. int main() {
  57.     setlocale(LC_ALL, "Rus");
  58.     int size, course, subject;
  59.     float average;
  60.     cout << "Введите количество студентов: ";
  61.     cin >> size;
  62.     Student student[100];
  63.     for (int i = 0; i < size; i++) {
  64.         cout << "Введите данные о " << i + 1 << " студенте: \n";
  65.         inputStudent(student[i]);
  66.     }
  67.     cout << "Итоговая информация о всех студентах: \n";
  68.     for (int i = 0; i < size; i++) {
  69.         cout << i + 1 << " студент \n";
  70.         outputStudent(student[i]);
  71.     }
  72.     cout << "\nВведите курс, на котором надо определить средний балл успеваемости: ";
  73.     cin >> course;
  74.     cout << "Введите номер предмета от 1 до 3, на котором надо определить средний балл успеваемости: ";
  75.     cin >> subject;
  76.     average = avarageGrade(student, course, subject, size);
  77.     cout << "Средний балл студентов " << course << " курса по предмету " << subject << " равен " << average;
  78. }
Advertisement
Add Comment
Please, Sign In to add comment