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

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

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

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

10.01.2012, 14:16. Просмотров 905. Ответов 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
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2012, 14:16     Разработать класс для представления сведений о студенте
Посмотрите здесь:

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

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

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

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

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

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

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dimcoder
Полярный
458 / 431 / 67
Регистрация: 11.09.2011
Сообщений: 1,129
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;
}
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, Вы лучше предоставьте полное задание! А то ничего не понятно!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.01.2012, 15:46     Разработать класс для представления сведений о студенте
Еще ссылки по теме:

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

Создать класс Triangle для представления треугольника. Поля данных должны включать углы и стороны. - C++
Создать класс Triangle для представления треугольника. Поля данных должны включать углы и стороны. Требуется реализовать операции:...

класс для представления понятия "контроллер видеомагнитофона" - C++
класс для представления понятия &quot;контроллер видеомагнитофона&quot;(обеспечивает програмное управление видеомагнитофоном, который может...

Разработать класс для шара - C++
Данными являются радиус и его плотность в граммах/см3. Операции: конструктор, расчёт площади поверхности шара и его массы в килограммах. ...


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

Или воспользуйтесь поиском по форуму:
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 292
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 минут
Это получается из того, что у меня есть. То что здесь вводится данные об одном студенте. А мне бы о многих) И чтобы их данные потом вывести на экран
Yandex
Объявления
10.01.2012, 15:46     Разработать класс для представления сведений о студенте
Ответ Создать тему
Опции темы

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