Задача на связанные списки |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Задача на связанные списки |
pashist |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 44 Пол: Мужской Репутация: 0 |
Здравствуйте! Помогите, пожалуйста, решить задачу!
Вот текст: Фирма по хранению и сбыту бытовых инструментов получает грузы с оборудованием по различным ценам и продает их затем с 20%-ной надбавкой, причем товары, полученные позднее, продаются в первую очередь. Нужно написать программу, считывающую записи о торговых операциях двух типов: операции по закупке и операции по продаже. Запись о закупке содержит префикс "R", количество товара, стоимость одного изделия и общую стоимость всей партии. Запись о продаже содержит префикс "S" и количество товара, а также стоимость данной партии. После считывания записи о закупке нужно вывести её на экран, например, если фирмой было продано 200 единиц оборудования, в которые входили 50 единиц с закупочной ценой 1,25$ и 150 единиц с закупочной ценой 1,1$, то должны быть напечатаны 3 строки: 50 штук по 1,50$ каждый на сумму 75.00$ 150 штук по 1.32$ каждый на сумму 198.00$ Всего продано на сумму 273.00$ Если на складе отсутствует требуемое в заказе число изделий, то нужно продать все имеющиеся и напечатать сообщение об отсутствии остальной части на складе. Как подойти к решению? Как здесь использовать связанные списки? Пожалуйста, проконсультируйте! |
мисс_граффити |
Сообщение
#2
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
Я бы сделала так: построила заголовочный список, в котором хранила инфу по каждому типу товаров, а именно: цена, количество на складе, указатель на след. элемент и указатель на список (или стек - как хочешь) поступлений по этому товару. каждый блок - только количество.
если человек вводит приходную информацию - суммируем имеющееся количество с привезенным и "цепляем" блок. если покупает - смотрим, хватит ли нам товара. если нет - выводим сообщение о нехватке и удаляем нафиг весь прицепленный список (стек). если хватит, вычитаем из общего количества и начинаем с последнего блока вычитать из отдельных поставочных блоков. нулевые блоки удаляем. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Текстовая версия | 24.04.2024 6:32 |