1. побудуйте модель транспортної і.
нехай xij — кількість борошна, перевезена з i-го млина до j-го заводу; yij — вартість перевезення однієї тонни борошна з i-го млина до j-го заводу. повна вартість перевезення:
s = x11· y11+ x12· y12+ x21· y21+ x22· y22 → min
знайдіть мінімальне значення s, дотримуючись таких умов:
• кількість борошна, перевезена з 1-го млина: x11+ x12 < = 50;
• кількість борошна, перевезена з 2-го млина: x21+ x22 < = 70;
• кількість борошна, що надійшла на 1-й хлібозавод: x11+ x21 > = 40;
• кількість борошна, що надійшла на 2-й хлібозавод: x12+ x22 > = 80.
2. на основі ї моделі занесіть дані у таблицю:
3. введіть у клітинки c5: d5 формули для обчислення кількості борошна, що надійшло на j-й хлібозавод.
4. уведіть у клітинки e3: e4 формули для обчислення кількості борошна, що вивезено з і-го млина.
5. виберіть цільову клітинку с13 і введіть формулу:
= c3*c10+c4*c11+d3*d10+d4*d11.
6. завантажте надбудову розв’язувач.
7. заповніть поля вікна параметри розв‘язувача, в поле оптимізувати цільову функцію запишіть адресу цільової клітинки.
8. у поле змінюючи клітинки змінних укажіть клітинки, які містять кількість борошна, перевезену з i-го млина до j-го заводу.
9. введіть обмеження згідно з моделлю. задайте умову цілочисельності змінних.
перевірте зміст поля підлягає обмеженням за даними, наведеними на рисунку.
10. отримайте звіт про успішність пошуку.
11. сформуйте на окремому аркуші звіт про отримані результати.
12. збережіть файл із назвою практична2.
n = int(input()) # присваиваем n - кол-во чисел
z = 0 # z - сумма всех чисел (изначально она = 0)
a = [] # a - массив состоящий из n чисел
for i in range(n): # делаем цикл для заполнения a
a.append(int(input())) # заполняем a
z = z+a[i] # так же считаем сумму всех чисел из a
x = z / len(a) # x - ср.ар. n чисел
l =abs(a[0]-x) # создаем n для того чтобы найти самое близкое к x число
m = 1 # создаем m для того чтобы найти номер самого близкого числа
for i in range(1,len(a)): # делаем цикл для нахождения m и n
if abs(a[i]-x)<l: # если число ближе к x чем число под номером n
l = abs(a[i]-x) # то присваиваем l - это число
m = i + 1 # а m - номер этого числа
print(m) # выводим номер числа
Объяснение:
S K
1 0 (s:=1 => s теперь равно 1; k:=0 => k теперь равно 0)
1 4 (входим в цикл while. По его условию, пока k меньше 13, будем повторять две следующие строчки. S получает значение s+2*k. Сейчас k=0, а s=1, поэтому s=1+2*0=1. k получает значение k+4. Теперь k=0+4=4. 4<13, поэтому входим в цикл ещё раз)
9 8 (Теперь s=1(предыдущее s)+2*4=9. k=k+4=4+4=8. 8<13 => входим в цикл ещё раз)
25 12 (s=s+2*k=9+2*8=25; k=k+4=8+4=12; 12<13 => входим в цикл ещё раз)
49 16 (s=s+2*k=25+2*12=49; k=12+4=16; 16>13 => выходим из цикла)
——————————————
Цикл завершён, а т. к. далее нет строчек, содержащих «s:=» или «k:=», значения s и k больше не меняются.
строчка «write(s+k)» означает выведение на экран суммы s и k. Значит, на экран будет выведена сумма чисел 49 и 16 (последних s и k) — 65.
<конец программы>.