Форум программистов
Реклама:
Гарантия безопасности сети с UTM-системой ИКС.
Защита ПД, межсетевой экран, контроль доступа, фильтрация трафика, система предотвращения вторжений.
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Новички в программировании > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 12.01.2017, 02:58   #1
YRELIS
Пользователь
 
Регистрация: 10.07.2015
Адрес: Минск
Сообщений: 14
Репутация: 10
Вопрос Абстрактный класс Pair

Доброй ночи!
Кто не спит и не занят, помогите разобраться с задачей:

Создать класс Pair (пара целых чисел); определить методы изменения полей и операцию сложения
пар (а, b) + (с, d) = (а + b, с + d). Определить класс-наследник Long с полями: старшая часть числа и
младшая часть числа. Переопределить операцию сложения и определить методы умножения и вычитания.

Не представляю даже с чего начать...
YRELIS вне форума   Ответить с цитированием
Старый 12.01.2017, 04:32   #2
ura_111
Профессионал
 
Регистрация: 14.05.2016
Сообщений: 1,495
Репутация: 263
По умолчанию

Начни с основ (в интернете поищи, что такое класс и все незнакомые слова, встречающиеся в задании)... Для начала тебе надо быстро набрать опыт работы с классами, а потом переходи к работе над своей задачей... Быстрей всего получится если смотреть видео на "ютубе" и повторять за лекторами. Ну вот например:
https://www.youtube.com/watch?v=EpjVri1AZZc

https://www.youtube.com/watch?v=rh9U1duQR8s

https://www.youtube.com/watch?v=l9FS5aWT_y4&t=1594s

https://www.youtube.com/watch?v=BMuiz7FWJBM
...................................
...................................
(поищи ещё - там много материала). Когда повторяешь код - думай как подстроить примеры под себя... Может быть с первого раза не получится - повтори код (пересмотри видеоролики) 2,3,4... раз. Это займёт какое-то время (день, два,... неделю) не обращай на это внимание. Не обижайся, но сейчас "помогите разобраться с задачей" - это значит сделать за тебя.

p.s.1: Немного непонятно в твоём задании словосочетание: "Абстрактный класс" - судя по видео этого молодого человека:
https://www.youtube.com/watch?v=jq-UlNmHYAQ
абстрактный класс содержит только декларацию функций, а сами их реализация должны уже присутствовать в дочерних классах... А у тебя в задании написано: (в родительском классе) "определить методы.... операцию сложения пар (а, b) + (с, d) = (а + b, с + d)..."... Это как бы противоречие: либо абстрактный класс без "методы... операции сложения", либо это не абстрактный класс (а обычный) с обычной декларацией и "расшифровкой" методов прям в нём.

p.s.2: Учти! Я поверхностно знаю классы, поэтому могу ошибаться.

p.s.3: не знаю понял ты или нет, но всё вышенаписаное относится только к первой части твоего задания, а именно:
1) Создать класс Pair (пара целых чисел);
2) определить методы изменения полей и операцию сложения пар (а, b) + (с, d) = (а + b, с + d);

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

Последний раз редактировалось ura_111; 12.01.2017 в 05:06.
ura_111 вне форума   Ответить с цитированием
Старый 12.01.2017, 05:25   #3
YRELIS
Пользователь
 
Регистрация: 10.07.2015
Адрес: Минск
Сообщений: 14
Репутация: 10
По умолчанию

Цитата:
Сообщение от ura_111 Посмотреть сообщение
p.s.2: Учти! Я поверхностно знаю классы, поэтому могу ошибаться.

p.s.3: не знаю понял ты или нет, но всё вышенаписаное относится только к первой части твоего задания, а именно:
1) Создать класс Pair (пара целых чисел);
2) определить методы изменения полей и операцию сложения пар (а, b) + (с, d) = (а + b, с + d);

Что касается второй части задания, где требуется создать дочерние классы, переопределить операцию сложения, добавить метод умножения и вычитания ( это нужно чтобы ты продемонстрировал свойства ООП - "наследование"), - то это уже другая история. Поищи видеоролики по теме "наследование классов в С++".
Спасибо за ответ, но я понимаю принципы классов и общее ООП, просто задание не совсем понимаю, а именно что должно выводиться и тому подобное.
YRELIS вне форума   Ответить с цитированием
Старый 12.01.2017, 05:39   #4
ura_111
Профессионал
 
Регистрация: 14.05.2016
Сообщений: 1,495
Репутация: 263
По умолчанию

Если надо с чего то начинать - начни с:

0.jpg

Не забудь вывести на экран элементы "rr", чтобы продемонстрировать, что суммирует правильно.

Это первая часть задания (работа с Pair). Во второй (там где наследование) - потом будешь разбираться.
ura_111 вне форума   Ответить с цитированием
Старый 12.01.2017, 05:53   #5
ura_111
Профессионал
 
Регистрация: 14.05.2016
Сообщений: 1,495
Репутация: 263
По умолчанию

Ну ты понял, да? В месте:
Код:

Pair hh(6, 8);
Pair yy(3, -1);

ты демонстрируешь "методы изменения полей", а в месте:
Код:

rr = hh + yy;

ты демонстрируешь "операцию сложения пар (а, b) + (с, d) = (а + b, с + d)".

p.s.: по поводу "методы изменения полей" ещё не знаю - может быть (может быть) нужно будет ещё как-то "изменять поля", но это потом... А пока тебе надо какой-то базис накопить (хотя бы для того, чтобы потом вопросы умные задавать более опытным форумчанам или своему преподавателю)...
ura_111 вне форума   Ответить с цитированием
Старый 12.01.2017, 06:27   #6
ura_111
Профессионал
 
Регистрация: 14.05.2016
Сообщений: 1,495
Репутация: 263
По умолчанию

Может быть в дальнейшем выясниться, что нужно не только "первоначально инициализировать полей класса Pair", а и необходимо предусмотреть отдельный "метод изменения этих полей" ... или нужно определения классов в отдельные файлы "запихнуть"... - Это всё потом уточнишь, а пока сделай хоть что-нибудь по своей задаче.

Последний раз редактировалось ura_111; 12.01.2017 в 06:48.
ura_111 вне форума   Ответить с цитированием
Старый 12.01.2017, 15:40   #7
YRELIS
Пользователь
 
Регистрация: 10.07.2015
Адрес: Минск
Сообщений: 14
Репутация: 10
По умолчанию

хорошо) спасибо
YRELIS вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Абстрактный класс Сырги C# (си шарп) 3 22.11.2012 01:13
абстрактный класс meta13 C# (си шарп) 2 22.03.2012 19:14
c# абстрактный класс tanek Помощь студентам 1 22.02.2012 11:23
абстрактный класс С++ zhenya.ya Помощь студентам 0 05.11.2010 21:23
Создать класс Pair izzie Общие вопросы Delphi 8 10.06.2010 15:27




01:39.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru