2.2 Входные и выходные данные
1) Задания на вычисление коммисионных, иполучения премий (1-е и 2-е задания)
Входными данными в этом типе заданий являются исходные таблицы с данными о доходах магазинов за указанные месяцы, а также сумма доходов по месяцам. В программе эти значения присваиваются различным переменным при помощи обьекта
WorkSheets(“”).Range(“”).Value
Выходными данными являются премиальные полученные в результате вычислений в соответствии с условием задания.
2)Составление ведомости расчета прибыли от товара.
Входными данными являются 9 различных видов цен на 5 комплектующих в соответствии с условием, а также значения цен на товар до комплектации.
Выходными данными являются значения сумм цен комплектующих, т.е. цены на товар, а также определение максимальной и минимальной цены на товар определяемого не только по стоимости на товар в целом, но и по стоимости комплектующих по отдельности.
3) Модель управления запасами
Входными данными в задаче являются цена продажи журналов, цена покупки и издательства продавцом, и цена возврата в случае нереализации товара продавцом, также известно количество реализуемых за раз продавцом пачек, и число событий за отчетный период времени.
Выходными данными в задаче являются значения максимальной прибыли и оптимального обьема продаж, которые в прогремме выводятся при помощи диалогового окна.
4) Задача об оптимальных капиталовложениях
В этой задаче входными данными являются значения мат. ожиданией прибыли как ф-ций капиталовложений, в соств. с условием 6 филиалов и 7 млн. грв.
Выходными данными являются таблица где производится: оптимальное распределение средств, когда А млн. вкладываются в 1-й и 2-й филиалы вмесле, оптимальное распределение средств, когда А млн. вкладываются в 1- й,2-й и 3-й филиалы вмесле, оптимальное распределение средств, когда А млн. вкладываются в 1-й,2-й,3-й,4-й филиалы вмесле,и оптимальное распределение средств, когда А млн. вкладываются в 1-й,2-й,3-й,4-й и 5-й филиалы вмесле и 1-й,2-й,3-й,4-й,5-й и 6-й.
Из этой таблицы находится максимальная ожидаемая прибыль в данном случае равная 1,01 млн. и оптимальные капиталовложения, из таблицы видно, сколько млн. и в какие филиалы нужно вложить:
6 филиал – 2 млн.
5 филиал – 1 млн.
6 филиал – 1 млн.
5) Задание на нахождение оптимального раскроя
Входными данными являются значения заказанных длин и их кол-ва, а также значение стандартной длины.
Выходными данными будут значения отходов при всех вариантах раскроя рассмотренных при решении задачи, и суммарное кол-во отходов которые по условию задачи необходимо минимизировать.
6) База данных
Сдесь входные данные являются выходными, т.е что пользователь ввел то и отобразится в таблице. База данных содержит слежующие поля: 2 поля ввода: Фамилия, имя 3 раскрывающихся списка: Работа,Стаж,Рабочий день (час) 2. Группы по 2 флажка: Кредитная карточка, загран. Паспорт 2 группы по 2 переключателя: Пол,Семейное положение 3. поля ввода со счетчиками: Возвраст,Оклад,отпуск
2.3 Подробное описание задач
2.3.1 Начисление премии в виде коммисионных и дополнительной оплаты.
Создаем таблицу начисления премий, в ячейки B4:D10 заносим значения доходов магазинов за указанные месяцы, сбоку в ячейках A4:A10 будут располагаться названия месяцев, согласно варианту – с ноября по май, а в B3:D3 – магазины, таким образом на пересечении будет показана величина дохода магизина который находится в этом столбце и месяца который расположен в этой строке.
В ячейке B11 считаем доход 1-го магазина за все месяцы по формуле =СУММ(B4:B10), и растягиваем маркер чертежа до ячейки D10, таким образом производится подсчет доходов всех магазинов за все месяцы.
Определяем какие же из доходов магазинов превышают 1490.00 грв. , для которых входят в это число премиальные будут составлять в соответствии с условием 2% от дохода за эти месяцы, остальные эл-ты в массиве специально заполняются нулями.
Do k = mas1(i)
If k > 1490 Then mas2(i) = mas1(i) Else mas2(i) = 0 i = i + 1 Loop Until i = 4
В этом цикле в массив заносятся только те значения которые превышают заданное по условию значение допустимости, в данном случае это 1490,00 руб.
Теперь доходы среди оставшихся магазинов нужно распределить по убыванию, для того, чтобы в соответствии с условием начислить магазинам дополнительные премиальные за 1-е, 2-е, 3-е место. Для этого выбираем следующий алгоритм: находим максимум среди этих доходов и назначаем этому магазину соответствующую 1-му месту премию, замем выбираем максимум из доходов не учитывая уже сужествующий (т.е. не учитывая первый максимум), и назначает этому магазину соотв. 2-му месту премию и т.д.
Do i = i + 1
If mas2(i) > Max Then
Max = mas2(i) indm = i
End If Loop Until i = 3
Складываем полученные 2% с теми что начисляются дополнительно за 1,2,3 и т.д места, и заносим резельтаты в таблицу в строку “Премиальные”
Worksheets([лист]).Cells([координаты ячеек]).Value = Max * 0.02 + Max * 0.04
|Месяц |М а г а з | | |и н ы | | |1 |2 |3 | |Ноябрь |100 |100 |120 | |Декабрь |300 |150 |650 | |Январь |1000|130 |250 | |Февраль |1000|120 |50 | |Март |0 |100 |760 | |Апрель |100 |100 |0 | |Май |310 |600 |500 | |Всего |2810|1300 |2330 | |Премиальные!|168,|0 |93,2 | | |6 | | |
2.3.2 Начисление премии по определенным условиям
Создаем таблицу начисления премий, заполняем ее величинами доходов за указанные месяцы, и считаем сумму доходов за все месяцы. Подробное описание как создавать таблицу и заполнять ее значениями приволится в предыдущем пункте.
Определяем какие из полученных сумм доходов лежат в какой из 4-х указанных в условии областей и заносим рез-ты в таблицу в ячейки B12:D12 которые отображают премиальные
Do i = i + 1 If AA_1(i) < 700 Then Worksheets("Задание2").Cells(12, i + 1).Value = Worksheets("Задание2").Cells(11, i + 1).Value * 0.01 If AA_1(i) >= 700 And AA_1(i) < 1400 Then Worksheets("Задание2").Cells(12, i + 1).Value = Worksheets("Задание2").Cells(11, i + 1).Value * 0.015 If AA_1(i) >= 1400 And AA_1(i) < 2800 Then Worksheets("Задание2").Cells(12, i + 1).Value = Worksheets("Задание2").Cells(11, i + 1).Value * 0.023 If AA_1(i) >= 2800 Then Worksheets("Задание2").Cells(12, i + 1).Value = Worksheets("Задание2").Cells(11, i + 1).Value * 0.025 Loop Until i = 3
Полученная таблица выглядит следующим образом:
|Месяц |М а г а з | | |и н ы | | |1 |2 |3 | |Ноябрь |50 |100 |120 | |Декабрь |50 |150 |650 | |Январь |100 |130 |250 | |Февраль |100 |120 |50 | |Март |120 |100 |760 | |Апрель |100 |100 |1000 | |Май |50 |600 |500 | |Всего |570 |1300 |3330 | |Премиальные!|5,7 |19,5 |83,25 |
2.3.3 Составление ведомости расчета прибыли от товара
Заполняем таблицу значениями, как указано в условии т.е 5 разновидностей комплектующих расположенных в ячейках B2:F2, и 9 вариантов стоимостей комплектующих в ячейках A3:A11. В ячейках B3:F12 будет располагаться значения стоимостей комплектующих и стоимости работы до комплектации.
В ячейках G3 по формуле =СУММ(B3:F3) считается общая стоимость всех комплектующих, растягиваем маркер ячейки G3 до ячейки G11, и получаем стоимость всех комплектующих для всех вариантов стоимостей.
В программе определяется какая деталь в каком месте самая дешовая, если не учитывать транспортные затраты и задаться целью купить детали по минимальным ценам. Для этого в программе определяются минимальные стоимости по 5-ти деталям.
Полученная ведомость будет выглядеть следующим образом: |Варианты| В и д ы к о м п л е к т | MIN /| | |у ю щ и х |MAX | |Стоимост|1-я |2-я |3-я |4-я |5-я |Всег| | |и |деталь |деталь|деталь|деталь|деталь |о | | |1-й |20 |90 |5 |50 |60 |225 | | |2-й |19 |85 |4 |55 |50 |213 | | |3-й |20 |81 |4 |50 |56 |211 |Миним. Цена на| | | | | | | | |товар | |4-й |25 |87 |8 |57 |58 |235 | | |5-й |29 |87 |5 |55 |60 |236 | | |6-й |18 |88 |4 |40 |61 |211 | | |7-й |30 |99 |9 |66 |60 |264 | | |8-й |30 |99 |9 |66 |64 |268 |Макс. Цена на | | | | | | | | |товар | |9-й |21 |90 |6 |54 |55 |226 | | |До |15 |75 |3 |40 |50 |183 | | |комплект| | | | | | | | |ации | | | | | | | |
2.3.4 Модель управления запасами
Вводим исходные значения , т.е. значения покупки продавцом журналов, продажи этих журналов и возврата в типографию в случае не реализации товара. Ввод всего этого производится в диалоговом окне, которое создается как UserForm со специальными кнопками и полями ввода покупки журналов, продажи, и возврата к типографию. Окно ввода выглядит так:
[pic]
Составляем таблицу состоящую из обьема реализации, числа событий, и вероятности этих событий, первые два нам даны по условию а вероятность этих событий нужно посчитать. Вводим в ячейку D7 следующую формулу вычисления вероятностей {=D6/СУММ($D$5:$I$5)} и растягиваем маркер до ячейки I7.
В ячейках C10:H15 спомощью ф-ции пользователя CALC Вычисляем финансовые исходы при всевозможных вариантых событий покупки журналов и их реализации
Function CALC(buy As Variant) As Variant Dim Цена_продажы, Цена_покупки, Цена_возврата, NRows, i, j As Integer, Result() As Integer NRows = buy.Rows.Count Цена_продажы = Range("a2").Value Цена_покупки = Range("b2").Value Цена_возврата = Range("c2").Value ReDim Result(NRows, NRows) For i = 1 To NRows For j = 1 To NRows If i j Then Result(i, j) = buy(j) * (Цена_продажы - Цена_покупки) - (buy(i) - buy(j)) * (Цена_покупки - Цена_возврата) Next j Next i CALC = Result End Function
В ячейках J11:J16 с помощью формулы {=МУМНОЖ(C10:H15;ТРАНСП(D7:I7))} находим ожидаемую прибыль, соответсввующую различным вариантам покупки журналов.
В ячейке F16 спомощью формулы =НАИБОЛЬШИЙ(J11:J16;1) вычисляем максимальную прибыль . Ее также можно найти воспользовавшись ф- цией МАКС, находящей максимальный эл-т из списка
=Макс(J11:J16)
В ячейке F17 по формуле =(ПОИСКПОЗ(НАИБОЛЬШИЙ(J11:J16;1);J11:J16;0)- 1)*5 соответствующий оптимальный обьем покупок газет. Затем функция CALC выводит эти оптимальные значения в окне сообщений.
Страницы: 1, 2, 3, 4