2 / 2 / 1
Регистрация: 28.01.2010
Сообщений: 71
|
|
1 | |
Написать класс Student30.09.2010, 18:17. Показов 4572. Ответов 22
Метки нет (Все метки)
Написать класс Student, содержащий сведения: фамилия, имя, отчество студента, оценки по m экзаменам. Написать программу, которая выводит количество студентов, сдавших сессию только на «4» и «5», и количество студентов, имеющих «2» хотя бы по одному экзамену. Вывести эти показатели и в процентном отношении.
Добавить в класс Student функцию-член класса, определяющую, получает ли студент стипендию, и в главной программе организовать подсчёт количества студентов в группе, получающих стипендию.
0
|
30.09.2010, 18:17 | |
Ответы с готовыми решениями:
22
Написать класс Student Помогите написать класс STUDENT Определить класс с именем STUDENT. Написать программу на C++ Создать класс student, который использует файл student.txt |
ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
|
||||||
30.09.2010, 23:24 | 2 | |||||
1
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
||||||
30.09.2010, 23:40 | 3 | |||||
PointsEqual, никогда, ни в коем случае, ни при каких обстоятельствах не смешивайте логику и пользовательский интерфейс. Никаких методов работающих с консолью в классе быть не должно.
Читается как: "Если grant равняется true верни true, если grant равняется false верни false", не легче ли:
1
|
ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
|
|
30.09.2010, 23:42 | 4 |
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
30.09.2010, 23:48 | 5 |
CyBOSSeR, А про перегруженные операторы ввода/вывода в поток какое мнение имеете?
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
30.09.2010, 23:56 | 6 |
0
|
ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
|
|
30.09.2010, 23:58 | 7 |
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
01.10.2010, 00:03 | 8 | |||||
CyBOSSeR, Ну допустим, если здесь изменить setdata на
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
||||||
01.10.2010, 00:06 | 9 | |||||
В классе должны быть методы позволяющие установить/получить нужные поля. К ним то ты и будешь обращаться. Пример:
Операторы ввода/вывода в поток имеет смысл перегружать с целью сохранения объекта в файл. Поэтому никакакого мусора типа "Please enter digit " в операторе быть не должно.
1
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
01.10.2010, 00:08 | 10 | |||||
CyBOSSeR, Все же для файлов лучше перегружать специфицированные...
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
01.10.2010, 00:13 | 11 |
Однофигственно.
Если в классе, который никак не должен быть связан с консолью (как студент связан с консолью?), есть обращения к консоли, то это не есть хорошо. Сегодня ты пишешь консольные приложения, а завтра оконные, послезавтра ты пишешь приложение вообще без графического интерфейса. В итоге каждый раз будешь переписывать несчастный класс.
1
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
01.10.2010, 00:13 | 12 |
CyBOSSeR, Что порекомендуете? Наследование? Включение? Или просто отдельные функции?
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
01.10.2010, 00:20 | 13 |
Lavroff, не думаю, что наследование или включение решат проблему. Скорее уж отдельные функции.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
01.10.2010, 00:22 | 14 | |||||
М. Кстати. Есть еще вопрос.
Если какая-то такая реализация - плохо?
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
||||||
01.10.2010, 00:29 | 15 | |||||
Lavroff, думаю, можно "убить" класс Derived за ненадобностью и сдеть методы ввода/вывода чисто виртуальными в классе Base.
Кстати, код в таком случае:
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||||||||||||
01.10.2010, 00:34 | 16 | |||||||||||||||
CyBOSSeR, На счет этого хз. Derived добавил, ибо все три подразумеваю под шаблонными.
В таком случае Derived вполне полезен, ибо если расширять функционал, возникнет проблема в инстанцированием шаблона абстрактного класса. С мат. операторами точно. С остальным - хз. По поводу работы - ща проверю. Он же по идее вообще замкнется вот тут:
Не. Не компилится.
0
|
Модератор
12459 / 7483 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
01.10.2010, 01:08 | 17 |
Не-а... Кроме того, что так пролетают мимо потоки istringstream/ostringstream, писать отдельные перегруженные функции для ввода с клавы/вывода на экран просто незачем. При нормальной организации интерфейса и, как правильно заметил CyBOSSeR,
вполне можно организовать присвоение значений полям объектов класса. Он же, кстати, и пример привёл...
1
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
01.10.2010, 01:11 | 18 |
easybudda, А если в классе допустим двумерный вектор? Не слишком ли накладна операция возврата двумерного вектора типа T?
0
|
Модератор
12459 / 7483 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
||||||
01.10.2010, 01:25 | 19 | |||||
1
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
01.10.2010, 01:29 | 20 |
easybudda, Правильно-то правильно. Вопрос в том не слишком ли накладно, при обращении из main(a) к закрытым данным классам, пользоваться таким геттером?
Хотя понял. Возвращается только ссылка. Тогда да. Действительно не накладно. Спасибо.
0
|
01.10.2010, 01:29 | |
01.10.2010, 01:29 | |
Помогаю со студенческими работами здесь
20
Разработать класс Man (человек) и производный класс Student (студент). Описать атрибуты. Базовый класс Student и производный класс Aspirant Базовый класс PERSON и производный класс STUDENT Создать класс Man (человек), с полями: имя, возраст, пол и вес. Создать производный класс Student ... Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |