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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.78
SergioDnDz
24 / 24 / 2
Регистрация: 27.02.2010
Сообщений: 74
#1

Описать класс "студенческая группа" - C++

09.12.2010, 22:00. Просмотров 3629. Ответов 12
Метки нет (Все метки)

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

есть примеры? )
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2010, 22:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Описать класс "студенческая группа" (C++):

Разработать класс "студенческая группа". Предусмотреть возможность работы с переменным числом студентов - C++
Помогите доделать, пожалуйста. #include <iostream.h> #include <conio.h> #include <process.h> #include <fstream.h> #include...

Описание класса "Студенческая группа" - C++
Добрый вечер! Нужна помощь в составлении программы. Условие: Описать класс "студенческая группа". Предусмотреть возможность работы с...

Класс "Студент", реализовать динамический список "Группа студентов" - C++
реализовать динамический список " группа студентов". Узел: -группа -фамилия Функции списка: -добавление по алфавиту ...

Описать класс "Контейнер" как объект, предназначенный для транспортировки классов "Строительных блоков" - C++
1. Опишите класс "Строительный блок", описывающий габариты и массу блока прямоугольной формы. Данные класса: Габариты, масса. Методы...

Наследование: "БГТУ", "Факультет", "Группа", "Подгруппа" - C++
Определить иерархию классов (в соответствии с вариантом – выделить базовый и производные). Реализовать классы (самостоятельно задать...

Создать класс "Группа студентов" - C++
Привет.Написал класс Студент, в котором можно создавать студента(имя, фамилия, оценки и т.п ), ну и выводить инфо на экран,теперь надо...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
SergioDnDz
24 / 24 / 2
Регистрация: 27.02.2010
Сообщений: 74
23.12.2010, 22:46  [ТС] #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
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
#include <iostream.h>
#include <conio.h>
#include <process.h>
#include <fstream.h>
#include <iomanip.h>
 
class Student {
                 char *name,*surname,*tel,*day,*month,*yer,razm,i;
 
                 public: 
                 void vvod(char,char,char,char,char,char);
                 void prosmotr();
                 void search_surname(char);
                 void search_tel(char);
                 void search_date(char,char,char);
                 void delet(char,char);
 
           };
 
 
  void Student::vvod(char nn,char ss,char tt,char dd,char mm,char yy)
  {
     razm++;
      *(name+razm)=nn;
     *(surname+razm)=ss;
     *(tel+razm)=tt;
     *(day+razm)=dd;
     *(month+razm)=mm;
     *(yer+razm)=yy;
  }
 
  void Student::prosmotr()
  {
  if (razm!=0)
      {
        for (i=0;i<=razm;i++)
          {
            cout<<*(name+i)<<setw(3)<<*(surname+i)<<setw(3)<<*(tel+i)<<setw(3)<<*(day+i)<<":"<<*(month+i)<<":"<<*(yer+i)<<"\n";
          }
      }
   else cout<<"-----Baza pusta-----";
   }
 
 
   void Student::search_surname(char r)
   {
   if (razm!=0)
     {
      for(i=0;i<=razm;i++)
       {
        if (*(surname+i)==r)
         {
          cout<<*(name+i)<<setw(3)<<*(surname+i)<<setw(3)<<*(tel+i)<<setw(3)<<*(day+i)<<":"<<*(month+i)<<":"<<*(yer+i)<<"\n";
         }
        else cout<<"Takoj zapisi v baze net";
       }
     }
    else cout<<"-----Baza pusta-----";
   }
 
   void Student::delet(char n,char r)
   {
     if (razm!=0)
     {
      for(i=0;i<=razm;i++)
       {
        if (*(name+i)==n && *(surname+i)==r )
         {
          while (i!=razm)
          {
           *(name+i)=*(name+i+1);
           *(surname+i)=*(surname+i+1);
           *(tel+i)=*(tel+i+1);
           *(day+i)=*(day+i+1);
           *(month+i)=*(month+i+1);
           *(yer+i)=*(yer+i+1);
          }
         }
        else cout<<"Takoj zapisi v baze net";
       }
     }
    else cout<<"-----Baza pusta-----";
   }
 
 
 
 
    void Student::search_tel(char k)
    {
    if (razm!=0)
     {
      for(i=0;i<=razm;i++)
       {
        if (*(tel+i)==k)
         {
          cout<<*(name+i)<<setw(3)<<*(surname+i)<<setw(3)<<*(tel+i)<<setw(3)<<*(day+i)<<":"<<*(month+i)<<":"<<*(yer+i)<<"\n";
         }
        else cout<<"Takoj zapisi v baze net";
       }
     }
    else cout<<"-----Baza pusta-----";
    }
 
 
    void Student::search_date(char d,char m,char y)
    {
    if (razm!=0)
     {
      for(i=0;i<=razm;i++)
       {
        if (*(day+i)==d && *(month+i)==m && *(yer+i)==y)
         {
          cout<<*(name+i)<<setw(3)<<*(surname+i)<<setw(3)<<*(tel+i)<<setw(3)<<*(day+i)<<":"<<*(month+i)<<":"<<*(yer+i)<<"\n";
         }
        else cout<<"Takoj zapisi v baze net";
       }
     }
    else cout<<"-----Baza pusta-----";
    }
 
 
  int main(){
      Student s;
      int ch,p;
      char name,surname,tel,day,month,yer,day1,month1,yer1,num,r;
      while(ch!=0)
       {
        cout<<"1.Dobavit \n2.Pokazat \n3.Poisk \n4.ydalenie \n5.Exit \n";
        cin>>ch;
        switch(ch)
            {
              case 1: cout<<"Vvedite im9 studenta: ";
                      cin>>name;
                      cout<<"Vvedite familiju Studenta: ";
                      cin>>surname;
                      cout<<"Vvedite nomer tefona studenta: ";
                      cin>>tel;
                      cout<<"Vvedite daty rogdenija:\n Den:\n Mes9c:\n God:\n";
                      cin>>day>>month>>yer;
                        s.vvod(name,surname,tel,day,month,yer);
                        break;
              case 2: s.prosmotr();
                      break;
              case 3:  while (p!=0)
                         {
                          cout<<"Vuberite priznak po kotoromy bydet osyshestvl9ca poisk:1.Familija\n2.Nomer telefona\n3.Data rojdeni9\n4.Exit";
                          cin>>p;
                          switch(p)
                           {
                            case 1: cout<<"Vvedite familiju Studenta: ";
                                    cin>>num;
                                    s.search_surname(num);
                                     break;
                            case 2: cout<<"Vvedite nomer tefona studenta: ";
                                    cin>>num;
                                    s.search_tel(num);
                                     break;
                            case 3: cout<<"Vvedite daty rogdenija: ";
                                    cin>>day1>>month1>>yer1;
                                    s.search_date(day1,month1,yer1);
                                     break;
                            case 4: exit(1);
                          default:cout<<"Stop error!!!\n";
                           }
                          }
                            case 4: cout<<"Vvedite im9 i familiju studenta: ";
                                    cin>>name>>surname;
                                    s.delet(name,surname);
              case 5:exit(1);
             default:cout<<"Stop <<error>>!!!"<<endl;
            }
        }
        getch();
        return 0;
          }
Добавлено через 1 минуту
всё вроде норм написано , но Case работает неправильно ( подскажите в чем проблема
0
lemegeton
2924 / 1353 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
23.12.2010, 22:59 #3
C++
1
2
3
4
5
6
*(name+razm)=nn;
*(surname+razm)=ss;
*(tel+razm)=tt;
*(day+razm)=dd;
*(month+razm)=mm;
*(yer+razm)=yy;
Где под эти массивы выделяется память!? Удивительно, что оно вообще работает.
0
SergioDnDz
24 / 24 / 2
Регистрация: 27.02.2010
Сообщений: 74
24.12.2010, 00:17  [ТС] #4
дикая помощь
0
lemegeton
2924 / 1353 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
24.12.2010, 00:50 #5
Что вам не нравится? Вы спрашиваете, что не так с кодом, я отвечаю, что указатели *name,*surname,*tel,*day,*month,*yer нигде не инициализируются и указывают на случайную область памяти.
0
RIL06
0 / 0 / 0
Регистрация: 31.03.2012
Сообщений: 6
29.11.2012, 06:30 #6
Цитата Сообщение от lemegeton Посмотреть сообщение
Что вам не нравится? Вы спрашиваете, что не так с кодом, я отвечаю, что указатели *name,*surname,*tel,*day,*month,*yer нигде не инициализируются и указывают на случайную область памяти.
а как ето сделать помогите пожалуйсто буду очень благодарен!
0
ValeryS
Модератор
6634 / 5041 / 466
Регистрация: 14.02.2011
Сообщений: 16,852
29.11.2012, 07:14 #7
Цитата Сообщение от RIL06 Посмотреть сообщение
а как ето сделать помогите пожалуйсто буду очень благодарен!
по правильному нужно ввести класс Студент и описать в нем Имя Фамилию и прочее
а в классе Группа иметь динамический массив(вектор подойдет),или список Студентов(класс Студент)
ООП на то и придумана чтобы разделять сущности
1
RIL06
0 / 0 / 0
Регистрация: 31.03.2012
Сообщений: 6
30.11.2012, 00:07 #8
Цитата Сообщение от ValeryS Посмотреть сообщение
по правильному нужно ввести класс Студент и описать в нем Имя Фамилию и прочее
а в классе Группа иметь динамический массив(вектор подойдет),или список Студентов(класс Студент)
ООП на то и придумана чтобы разделять сущности
а можыте написать код а то я не бум бум а позарез нужен ету программу.
0
RIL06
0 / 0 / 0
Регистрация: 31.03.2012
Сообщений: 6
01.12.2012, 02:14 #9
Люди напишите пожалуйсто готовій код а то сдавать скоро а готового кода нет(((
Помогите Срочно! Буду очень благодарен!
0
SlavAz
01.12.2012, 02:28
  #10

Не по теме:

Напиши потом как сдал.

0
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,925
Записей в блоге: 1
01.12.2012, 02:31 #11
C++
1
2
3
4
5
6
7
8
9
10
#include "students.h"
#include "soldiers.h"
int main(){
  univercityGroup* group10832=new univercityGroup();
  ArmyGroup*        Platoon3=new ArmyGroup();
  group10832->addStudent(student("RIL06"));
  group10832->ExpellAllStupents();
  Platoon3->addSoldier(soldier("RIL06"));
  return 0;
}
1
ValeryS
Модератор
6634 / 5041 / 466
Регистрация: 14.02.2011
Сообщений: 16,852
01.12.2012, 09:55 #12
Kuzia domovenok,
Круто
0
RIL06
0 / 0 / 0
Регистрация: 31.03.2012
Сообщений: 6
02.12.2012, 13:49 #13
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
#include "students.h"
#include "soldiers.h"
int main(){
  univercityGroup* group10832=new univercityGroup();
  ArmyGroup*        Platoon3=new ArmyGroup();
  group10832->addStudent(student("RIL06"));
  group10832->ExpellAllStupents();
  Platoon3->addSoldier(soldier("RIL06"));
  return 0;
}
а что должно быть в библиотеках?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2012, 13:49
Привет! Вот еще темы с ответами:

Создать класс "Вентилятор" содержащий в себе классы: "Двигатель", "Контроллер", "Пульт управления" - C++
Помогите с кодом написания задачи, не понимаю как написать классы в классе. Нужно создать класс &quot;вентилятор&quot; содержащий в себе классы:...

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания" - C++
Создать класс Книга поля: название книги,количество страниц,год издания методы: вычислить сколько лет книге и количество дней прошедших...

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

Чтения структуры из файла (описать структуру с именем "ORDER": "счет плательщика"; "счет получателя"; "сумма, переводится банковской операцией") - C++
Описать структуру с именем &quot;ORDER&quot;, содержащий следующие поля: &quot;Счет плательщика&quot;; &quot;Счет получателя&quot;; &quot;Сумма, переводится банковской...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
02.12.2012, 13:49
Ответ Создать тему
Опции темы

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