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;
}
====================================
|