|
Модераторы: Poseidon |
|
altai |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 15.9.2010 Репутация: нет Всего: нет |
В рамках изучения ООП, получил следующие задание на тему "Наследование. Использование защищенного доступа":
"1) Создать абстрактный класс Товар с методами, позволяющим вывести на экран информацию о товаре, а также определить, соответствует ли она сроку годности на текущую дату. 2) Создать производные классы: Продукт (название, цена, дата производства, срок годности), Партия (название, цена, количество шт, дата производства, срок годности), Комплект (названия, цена, перечень продуктов) со своими методами вывода информации на экран, и определения соответствия сроку годности. 3) Создать базу (массив) из n товаров, вывести полную информацию из базы на экран, а также организовать поиск просроченного товара (на момент текущей даты). " Из этого задания я не могу понять, какого вида записи должна содержать "база (массив) из n товаров". Если я создам файл из записей типа [название продукта], [цена], [дата производства], [срок годности], вроде такого: хлеб, 50шт, 14.50, 14.09.2010, 16.09.2010 печенье, 20 шт, 19.90, 10.09.2010, 10.12.2010 мармелад, 70 шт, 20.20, 02.02.2010, 05.09.2010 то откуда брать данные в массив "Комплект"? По заданию Комплект - это какой-то перечень продуктов. Что за продукты, по какому признаку они связаны, вообще не могу понять. И еще вопросы: 2) Непонятно, зачем создавать три разных класса, если, в конечном счете, на экран будет выведено содержимое класса Продукт, т.к. оно полностью описывает содержимое файла. С какой целью предполагается создать классы Комплект и Партия? Не могу проследить логику автора задания. 3) по заданию нужно для каждого класса создать свои методы определения срока годности. Непонятно, что может быть разного в формуле определения срока годности для всех трех классов. Известна дата производства, известна дата истечения срока годности. Сравниваем с текущей датой и показываем объекты, с действующим сроком годности. Где тут могут быть отличия, зачем создавать этот метод для каждого класса в отдельности? Буду дико благодарен за любые комментарии по этому заданию. |
|||
|
||||
ksnk |
|
|||
прохожий Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: нет Всего: 386 |
База должна состоять из нескольких таблиц.
Товары, партии, комплекты. для иллюстрации - магазин заказывает товар на складах. В понедельник утром магазинный грузовичек объезжает склады и привозит товар в магазин. -- содержимое кузова грузовика - это комплект. Может понадобится дата привоза, имя водителя, имя приемщика товара -- водитель получил по накладной на хлебозаводе 400 буханок хлеба "Дарницкий". - это партия. Она имеет срок хранения, который представляет собой время, оставшееся до исчерпания срока хранения товара (учитываем время хранения на складе производителя) Нужна дата привоза, но можно взять из даты комплекта. Может понадобится номер накладной. -- ну а конкретная буханка - товар. Это справочная таблица, так что дата производства в ней не нужна. при оформлении грузовика в базе заводится одна запись в таблице "комплекты", и столько записей в таблице "партии", сколько разных наименований товаров привезли. если привезенный товар отсутствует в таблице товаров - может понадобится заполнить строчку и в ней. кстати, содержимое одной из комнат магазина - тоже комплект, так что может понадобится еще и хранение "деревьев" в базе но, наверное, мучить бедных детей настолько не должны... -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
altai |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 15.9.2010 Репутация: нет Всего: нет |
спасибо, вы мне очень помогли! Задание понял, буду теперь делать. База данных и деревья тут вряд ли предполагаются, потому что у нас еще даже курса баз данных не было, это самые азы программирования, буквально вот ООП разбираем. Сделаю просто два текстовых файла, в одном из которых будет храниться список товаров на складе, а в другом - накладные на получение товара. Массив Продукты буду формировать, читая первый файл. Массив Партия тоже сформирую, читая первый файл (буду выделять разные товары с одной датой производства и объединять их в партии (типа, они покинули конвеер завода в один день). Массив Комплекты заполню, читая файл с накладными. Потом выведу на экран содержимое массива Продукты, выводя для каждого продукта номер накладной, по которой он получен у поставщика и номер партии, в которой он прибыл на склад. Таким образом, у меня будут связаны в единую таблицу все три массива.
Это сообщение отредактировал(а) altai - 15.9.2010, 20:54 |
|||
|
||||
Rodman |
|
|||
CIO Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 26 Всего: 122 |
|
|||
|
||||
altai |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 15.9.2010 Репутация: нет Всего: нет |
Язык программирования в данном случае не играет роли, обсуждается только алгоритм. Пытался исправить заголовок темы, но не нашел где это делается. :(
|
|||
|
||||
Правила форума "Центр помощи" | |
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Центр помощи | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |