Используя программу Поиск решения, решите задачу оптимизации выпуска изделий на предприятии «Орбита». Предприятие выпускает приборы трех типов - прибор 1, 2 и 3. Количество комплектующих элементов, используемых для производства каждого типа, и ежедневный запас элементов приведены в таблице Расход элементов первого типа можно по формуле
= ВЗ*$В$6 + СЗ*$С$6 + DЗ*$D$6
С автозаполнения вычислите расход элементов второго и третьего типа. Определите, каким образом следует изменить соотношение типов выпускаемых приборов, чтобы обеспечить максимальный суммарный выпуск приборов при оптимальном расходе имеющегося запаса комплектующих элементов?
Для решения этой задачи используйте программу Поиск решения. Установите для целевой ячейки F6 максимальное значение.
Введите следующие ограничения:
1. Количество выпускаемых приборов должно быть целым числом.
2. Расход элементов не должен превышать их запас.
3. Выпуск приборов каждого типа не должен быть меньше 100 шт.
Задача 5
После того, как решение будет получено, скопируйте таблицу на следующем листе и посчитайте в столбце G остаток каждого типа элементов, а в ячейке G6-суммарный остаток. Проведите поиск решения, установив для целевой ячейки G6 минимальное значение. Сравните полученные результаты
Program arrayMinValueSwapFirst;var numbers: array [1..10] of integer; maxValIndex: integer;begin write('Исходный массив: '); for var i: integer := 1 to 10 do begin numbers[i] := random(11); write(numbers[i]); if i < 10 then write(', '); end; var minVal: integer := -1; // Сюда записываем рекорд по значению for var i: integer := 1 to 10 do if (numbers[i] > minVal) then begin minVal := numbers[i]; maxValIndex := i; end; writeln(); writeln('Индекс максимального: ', maxValIndex); var buf: integer := numbers[1]; numbers[1] := minVal; numbers[maxValIndex] := buf; write('Результат : '); for var i: integer := 1 to 10 do begin write(numbers[i]); if i < 10 then write(', '); end;end.
uses Crt; var A, B, C; integer; begin ClrScr; while (A > -10) and (A < 10) do while (B > -10) and (B < 10) do begin write(' Ввести два целых числа: '); readln(A, B); C:= A * B; writeln(' Произведение равно: ' ,C); end; writeln(' Программа завершена.'); readln end.
На выходе:
uses Crt; var A, B, C; integer; begin ClrScr; while (A > -10) and (A < 10) do while (B > -10) and (B < 10) do begin write(' Ввести два целых числа: '); readln(A, B); C:= A * B; writeln(' Произведение равно: ' ,C); end; writeln(' Программа завершена.'); readln end.
uses Crt; var A, B, C; integer; begin ClrScr; while (A > -10) and (A < 10) do while (B > -10) and (B < 10) do begin write(' Ввести два целых числа: '); readln(A, B); C:= A * B; writeln(' Произведение равно: ' ,C); end; writeln(' Программа завершена.'); readln end.
На выходе:
uses Crt; var A, B, C; integer; begin ClrScr; while (A > -10) and (A < 10) do while (B > -10) and (B < 10) do begin write(' Ввести два целых числа: '); readln(A, B); C:= A * B; writeln(' Произведение равно: ' ,C); end; writeln(' Программа завершена.'); readln end.