GVA SUPPORT

Відповідь на запитання № 1305364781
Text:
	ФІО = Горбаченко В.А.

 Запитання:/*
 * Завдання: Визначити структуру для збереження інформації про успішність 
 * студентів протягом зимової сесії, в яку студенти складають 4 іспити.
 * Структура повинна включати прізвище студента, номер групи та 4 оцінки.
 * Задати інформацію про групу з n студентів. Написати функцію, яка повертає
 * середній бал по всіх дисциплінах.
 */
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

#define lessonscount 4 // кількість предметів
#define stringlength 256 // максимальна довжина строки

using namespace std;
struct TStudent{ // структура
       public:
       char   *name;         // ім'я
       int    num;           // група
       int    mark[lessonscount];// масив оцінок
       void   GetInfo(){            // зчитуємо інформацію про студента
             cout << "   Enter student name  [str] : ";
             cin>>name;
             cout << "   Enter student group [int] : ";
             cin>>num;
             
             for (int i=0 ; i < lessonscount ; i++){
                 cout<<"     Enter mark of lesson #"<<i+1<<" : ";
                 cin>>mark[i];
             }
       }
       double GetAverageRating(){// повертаємо середню оцінку за предмети
            double AverareMark=0;
             for ( int i=0 ; i < lessonscount ; i++ ){
                 AverareMark+=mark[i];   
             }
             return AverareMark/=lessonscount;            
       }
       TStudent(){// конструктор 
          name=new char[stringlength]; // виділяємо місце в пам'яті під ім'я
       }
       ~TStudent(){
          delete name; // звільнюємо місце
       }

};
int EnterN(){// зчитуємо N і повертаємо
    int n;
    do{
       cout<<"Enter N [n>=2] : ";
       cin>>n;
    } while (n<2);
    return n;
}
int main(){
    do{
        int n=EnterN();      // створюємо та зчитуємо n
        TStudent studs[n];   // створюємо масив структур
        for (int i = 0 ; i < n ; i++){// Зчитуємо інформацію про студентів
            cout<<"Information about #"<<i+1<<"\n\r";
            studs[i].GetInfo();
        }
        cout<<"\n\n";
        for (int i = 0 ; i < n ; i++){ // виводимо середн'є арифметичне по предметам
            cout<<" -> Rating of student # "<<i+1<<" : "
                <<studs[i].name<<"\t in group "<<studs[i].num
                <<"\t is "<<studs[i].GetAverageRating()<<"\t"<<endl;
        }
        cout<<"\n\nPress ESC to EXIT or ANY key to continue...\n\r";
    } while (getch()!=27);// повторюємо до тих пір поки користувач не нажме ESC
    system("PAUSE");    
    return 0;
}


====================================	
Ваша відповідь