0 / 0 / 0
Регистрация: 16.01.2021
Сообщений: 2
1

Работа с массивами и списками

16.01.2021, 16:55. Показов 208. Ответов 0

Есть задача:

Определить базовый класс для студента ( имя, факультет, факультетный номер и номер группы). Определить производный класс (Успеваемость, заданный двумя массивами оценок по всем дисциплинам за два семестра (количество оценок в каждом семестре равно 5)). Классы должны включать конструкторы без параметров для заполнения переменных-членов в диалоговом окне. Написать методы для отображения среднего успеха для каждой группы, а также максимального и минимального среднего успеха для данной группы. Метод, чтобы отобразить оценки для каждого учащегося и для учащихся из данной группы. Переопределите операцию <<, которая будет использоваться для отображения данных. Сохранить данные в файле.

Создала класс Студент и дочерний класс Успех.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
#include <string>
#include <string>
#include <iostream>
 
 
class Students {
    public:
        void set_name(std::string student_name)
        {
            name = student_name;
        }
        std::string get_name()
        {
            return name;
        }
 
        void set_fnum(int student_fnum)
        {
            fnum = student_fnum;
        }
 
        int get_fnum()
        {
            return fnum;
        }
 
        void set_group(int student_group)
        {
            group = student_group;
        }
 
        int get_group()
        {
            return group;
        }
 
        void set_fakultet(std::string student_fakultet){
            fakultet=student_fakultet;
        }
 
        std::string get_fakultet(){
        return fakultet;
        }
 
    private:
        std::string name;
        int fnum;
        int group;
        std::string fakultet;
};
 
 
class Uspeh:public Students{
  int sem_1[5];
  int sem_2[5];
  float avrg;
 
public:
           void set_sem_1(int student_sem_1[])
        {
            for (int i = 0; i < 5; ++i) {
                sem_1[i] = student_sem_1[i];
            }
        }
 
 
        void set_sem_2(int student_sem_2[])
        {
            for (int i = 0; i < 5; ++i) {
                sem_2[i] = student_sem_2[i];
            }
        }
        
 
 
        void set_avrg(float ball)
        {
            avrg = ball;
        }
 
        float get_avrg()
        {
            return avrg;
        }
 
void addStudent(){
 
    Uspeh student; // Создание объекта класса Student
 
    std::string name;
        int fnum;
        int group;
    std::string fakultet;
 
 
    std::cout << "Name: ";
    getline(std::cin, name);
 
    std::cout << "Fak nomer: ";
    std::cin >> fnum;
 
    std::cout << "Group: ";
    std::cin >> group;
 
    std::cout << "Fakultet: ";
    getline(std::cin, fakultet);
 
    // Сохранение имени и фамилии в объект класса Uspeh
    student.set_name(name);
    student.set_fnum(fnum);
    student.set_group(group);
    student.set_fakultet(fakultet);
 
 
    int sem1[5];
    int sem2[5];
    int sum = 0;
 
    // Ввод промежуточных оценок
    std::cout<<"Оценки за 1 семестр:"<<std::endl;
    for (int i = 0; i < 5; ++i) {
        std::cout << "Score " << i+1 << ": ";
        std::cin >> sem1[i];
        // суммирование
        sum += sem1[i];
    }
 
    std::cout<<"Оценки за 2 семестр:"<<std::endl;
    for (int i = 0; i < 5; ++i) {
        std::cout << "Score " << i+1 << ": ";
        std::cin >> sem2[i];
        // суммирование
        sum += sem2[i];
    }
 
    // Сохраняем промежуточные оценки в объект класса Student
    student.set_sem_1(sem1);
    student.set_sem_2(sem2);
 
    // Считаем средний балл
    float average_ball = sum / 10.0;
 
    // Сохраняем средний балл в объект класса Students
    student.set_avrg(average_ball);
}
 
};
В общем это все, до чего я дошла. Где теперь хранить объекты типа Успех? Чтобы потом была возможность отсортировать по успеваемости.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.01.2021, 16:55
Ответы с готовыми решениями:

Работа с массивами и списками. Методы сортировки и поиска.
помогите написать програму Задачa Написать программу которая выполняет следующие действия: 1)...

Работа со списками и массивами numpy
Доброго времени суток! Имеется матрица, представленная в виде списка списков и двумерный...

Скорость работы с данными (массивами,списками и тд)
Переписываю код с матлаба на python. Столкнулся с проблемой, что в матлабе простые операции...

Задача со списками и массивами. Нужно как можно быстрее
Задача о составлении статистики текста. Необходимо по заданному входному тексту сформировать...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.01.2021, 16:55
Помогаю со студенческими работами здесь

Работа с динамическими массивами. Работа с двумерными массивами
Выполнить все задания предыдущей лабораторной работы, используя ТОЛЬКО динамические массивы....

Qt работа со списками
Разработать приложение с двумя списками элементов. Кнопки Add добавляют новый элемент в...

Работа со списками
Привет всем. Есть такой вопрос - нужно написать функцию, которая для заданных произвольного...

Работа со списками
Здравствуйте! Имеется такая задача: Написать функцию complexMap :: → → → ...

Работа со списками
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics,...

Работа со списками
Здравствуйте. У меня возникли проблемы со следующим заданием: Выделите с помощью комбинации вызовов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru