Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 296
#1

Разработать класс для представления сведений о студенте - C++

10.01.2012, 14:16. Просмотров 937. Ответов 3
Метки нет (Все метки)

Разработать класс для представления сведений о студентах: фамилия, группа, массив из четырёх оценок. Класс должен включать весь необходимый интерфейс: конструкторы, перегрузку операций, другие необходимые методы.
Разработать функции:
Ввода данных о нескольких студентах в массив
Сортировки массива по фамилиям(По сумме баллов)
Поиск студентов, не сдавших более 2 экзаменов (паарметры: массив, номер группы)
Помогите плиз. Я на экзамене

Добавлено через 13 минут
Вот часть моей программы. Мне кажется, что-то не так и хз что даьлше делать
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
using namespace std;
 
class Student
{
private:
    char fam[80];
    int gruppa;
    int mas[4];
public:
    void getData()
    {
        cout << "/n Vvedite familiy: "; cin>>fam;
        cout << " Vvedite gruppu: /n"; cin age;
        cout << " Vvedite 4 ocenki /n"; cin mas[4];
    }
 
int main()
{
    char ch;
    Student pers; // Создаём обьект Student
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2012, 14:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Разработать класс для представления сведений о студенте (C++):

Разработать класс Point для представления точки на плоскости - C++
Разработать класс Point для представления точки на плоскости. Разработать класс, производный от класса Point. Создать гетерогенный массив...

Создайте класс для хранения данных о студенте - C++
1. Создайте класс для хранения данных о студенте: фамилия, специальность, курс, успеваемость (массив из пяти элементов). В классе должны...

Реализовать класс ModelWindow, добавив поле для курсора, используя для представления поля класс Cursor - C++
Реализовать класс ModelWindow, добавив поле для курсора. Используйте для представления поля класс Cursor. (это под типом класс в классе).

Реализовать класс Goods используя для представления цены класс Money - C++
Реализовать класс Goods (пункт 1 ), используя для представления цены класс Money с пункта 2 Реализовать метод уценки товара, уменьшая цену...

Реализовать класс Triangle (задание 25), опираясь на класс Angle из задания 26 для представления углов - C++
Реализовать класс Triangle (задание 25), опираясь на класс Angle из задания 26 для представления углов. Собственно вот такая проблема. Не...

Разработать структуру для представления информации о группе - C++
Помогите, как разработать структуру для представления информации о группе, а именно: ф.и.о., адрес, дата рождения, средняя успеваемость в...

3
dimcoder
Полярный
466 / 439 / 68
Регистрация: 11.09.2011
Сообщений: 1,137
10.01.2012, 14:39 #2
Вот когда писал, но со структурами, похожую задачу. Могу помочь подправить под классы и под вашу собственно задачу.
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
#include <iostream.h>
#include <conio.h>
 
const int subjCount = 3;
 
struct Student
{
   Student();
 
   float getAverage();
 
   void setFamily(const char *);
   void setName(const char *);
 
   const char * getFamily() {return family;}
   const char * getName() {return name;}
 
   void print();
 
   char family[30];
   char name[30];
 
   int subjCount;
   int marks[30];
};
 
Student::Student()
{
   for (int i = 0; i < 30; i++)
      marks[i] = 0;
}
 
void Student::print()
   {
      cout << "Family = " << getFamily() << "\nName = " << getName() << endl;
      cout << "Marks = ";
      for (int i = 0; i < subjCount; i++)
     cout << marks[i] << " ";
      cout << "Average mark = " << getAverage() << endl;
   };
 
float Student::getAverage()             //Count - number of subjects
{
   float sum = 0;
 
   for (int i = 0; i < subjCount; i++)
      sum += marks[i];
 
   return ((float)(sum/subjCount));
}
 
void editStudentInfo(Student &st)
{
   char buf[30];
   cout << "Family = ";
   cin >> buf;
   for (int i = 0; buf[i]; i++)
      st.family[i] = buf[i];
   st.family[i] = '\0';
 
   char buf2[30];
 
   cout << "Name = ";
   cin >> buf2;
 
 
   for (i = 0; buf2[i]; i++)
      st.name[i] = buf2[i];
   st.name[i] = '\0';
 
   cout << "Marks(" << subjCount << ") = ";
   for (i = 0; i < subjCount; i++)
      cin >> st.marks[i];
}
 
int main ()
{
   clrscr();
 
   Student st[30];
 
   cout << "Enter option:" << endl;
   cout << "Add student 1" << endl;
   cout << "Print student's info 2" << endl;
   cout << "Print all students info 3" << endl;
   cout << "Go out (0)" << endl;
 
   int n;
   int quantity = 0;
 
   cout << "Enter the number of the operation: ";
   cin >> n;
 
   while(n > 0)
   {
 
      switch(n)
      {
     case 1:
     {
        editStudentInfo(st[quantity]);
        quantity++;
     }
     break;
     case 2:
     {
        int x;
        cout << "Enter the number of the student you want to get info about: ";
        cin >> x;
        if ((x-1) < quantity)
           st[x-1].print();
        else
           cout << "This student doesnt exist!" << endl << endl;
     }
     break;
     case 3:
     for (int i = 0; i < quantity; i++)
     {
        cout << "Info about student No_" << i << ":" << endl;
        st[i].print();
        cout << endl;
     }
     break;
     default:
        cout << "End." << endl;
 
      }
      if(n > 3 || n <= 0)
       n = 0;
      else
      {
     cout << "Enter the number of the operation: ";
     cin >> n;
     cout << endl;
      }
   }
 
 
 
 
   getch();
 
   clrscr();
 
   return 0;
}
0
absokolov
29 / 29 / 1
Регистрация: 10.05.2011
Сообщений: 120
10.01.2012, 14:43 #3
Ну из того что у Вас есть, подправил вот так:
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
#include <iostream>
using namespace std;
#include <vector>
 
#define ARR 4
 
struct st
{
        char fam[80];
        int age;
        int gruppa;
        int mas[ARR];
 
};
 
class Student
{
   vector < st > students;
 
public:
        Student(){}; // Constructor
        ~Student(){}; // Destructor
 
        void getData()
        {
                st student;
 
                cout << "/n Vvedite familiy: ";
                cin>>student.fam;
 
                cout << " Vvedite gruppu: /n";
                cin>>student.gruppa;
 
 
                cout << " Vvedite vozrast: /n";
                cin>>student.age;
 
 
                for (int i = 0; i < ARR; i++)
                {
                    cout<<"Vvedite ocenku "<<i<<endl;
                    cin>>student.mas[i];
                }
 
                students.push_back(student);
        }
};
Добавлено через 1 минуту
DebieCooepr, Вы лучше предоставьте полное задание! А то ничего не понятно!
1
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 296
10.01.2012, 15:46  [ТС] #4
Полное задание:
Разработать класс для представления сведений о студентах: фамилия, группа, массив из четырёх оценок. Класс должен включать весь необходимый интерфейс: конструкторы, перегрузку операций, другие необходимые методы.
Разработать функции:
Ввода данных о нескольких студентах в массив
Сортировки массива по фамилиям(При совпадении фамилий сортируем по сумме балов)
Поиск студентов, не сдавших более 2 экзаменов (паарметры: массив, номер группы).
Вот что мне дали

Добавлено через 22 минуты
absokolov, можете дальше помочь?

Добавлено через 25 минут
20 минут осталось помогите плз.
Я вот тут еще что-то навыдумывал:
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
#include <iostream>
using namespace std;
#include <vector>
 
#define ARR 4
 
struct st
{
        char fam[80];
        int gruppa;
        int mas[ARR];
 
};
 
class Student
{
   vector < st > students;
 
public:
        Student(){}; // Конструктор
        ~Student(){}; // Деструктор
 
        void getData()
        {
                st student;
 
                cout << "/n Vvedite familiy: ";
                cin>>student.fam;
 
                cout << " Vvedite gruppu: /n";
                cin>>student.gruppa;
                
 
                for (int i = 0; i < ARR; i++)
                {
                    cout<<"Vvedite ocenku "<<i<<endl;
                    cin>>student.mas[i];
                }
 
                students.push_back(student);
        }
void showData()
{
    cout << "\n Familiya: " << student.fam;
    cout << "\n gruppa: " << student.gruppa;
    cout << "\n Ocenka: " << student.mas[i];
}
};
Добавлено через 5 минут
Это получается из того, что у меня есть. То что здесь вводится данные об одном студенте. А мне бы о многих) И чтобы их данные потом вывести на экран
0
10.01.2012, 15:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.01.2012, 15:46
Привет! Вот еще темы с ответами:

Создать класс для представления простой дроби - C++
Создать класс для представления простой дроби. Реализовать конструкторы, функцию сокращения дроби, а также перегрузить операции +, -, *, /,...

Создать класс для представления и работы с обыкновенными дробями - C++
Помогите пожалуйста решить задачу, буду очень благодарна Создать класс для представления и работы с обыкновенными дробями. На...

Реализовать класс ассоциативная таблица для представления списков вида имя=значение - C++
I. Реализовать класс 1. Ассоциативная таблица для представления списков вида имя=значение и словарей fish рыба class ATable { ...

Создайте класс Student, который будет содержать информацию о студенте - C++
1. Создайте класс Student, который будет содержать информацию о студенте. С помощью механизма наследования, реализуйте класс...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru