3.2. Методические указания по выполнению контрольных заданий
Методические указания к задачам 1-10
Содержание задач сводится к табулированию функций в заданных интервалах. Для их решения надо организовать циклы для вычислений функций при различных значениях аргументов, изменяющихся с определенным шагом.
Пример. Составить блок-схему алгоритма и программу расчета величины группы свиноматок (гол.), отобранных для опороса, в течение одного шага ритма по формуле
где М – среднегодовое поголовье свиноматок, гол.;
Вц – продолжительность воспроизводительного цикла, дни;
Ш – шаг ритма опоросов, дни.
Величина ритма изменяется в пределах от 1 до 15 дней с шагом 1 день.
В данном примере функцией является величина группы свиноматок, а аргументом – шаг ритма. Блок – схема алгоритма расчета величины свиноматок, отобранных для опороса имеет вид (рис.1).
Для составления программы перейдем от символов в задаче к символам языка Бейсик: ММ, Вц В, Ш С, П Р.
Программа расчета величины группы свиноматок, отобранных для опороса, с использованием оператора условного перехода имеет вид:
10 REM РАСЧЕТ ВЕЛИЧИНЫ ГРУППЫ СВИНОМАТОК
20 INPUT М,В
30 LET C = 1
40 LET Р=М*С/В
50 PRINT С,Р
60 LET С=С+1
70 IF С<= 15 GO ТО 40
80 END
В программе в операторе 10 записан комментарий (название программы). Оператор 20 осуществляет ввод числовых значений переменных М (среднегодового поголовья свиноматок) и В (прдолжительности воспроизводительного цикла). Оператор 30 присваивает переменной С значение 1 (нижний предел изменения шага ритма опоросов). Оператор 40 вычисляет значения переменной Р (величину группы свиноматок, отобранных для опороса). Оператор 50 выводит на экран дисплея значения переменных С и Р. Оператор 60 увеличивает значение переменной С на шаг 1. Оператор 70 осуществляет разветвление вычислительного процесса: если С 15, то управление передается оператору 40, в противном случае – на коней программы.
При использовании операторов цикла программа принимает вид:
10 REM РАСЧЕТ ВЕЛИЧИНЫ ГРУППЫ СВИЕОМАТОК
20 INPUT М,В
30 FOR C = 1 ТО 15 STEP 1
40 LET Р = М*С/В
50 PRINT С,Р
60 NEXT C
70 END
Цикл в программе организуется с помощью операторов 30 и 60. Это операторы заголовка цикла FOR…, TO… STEP и конца цикла NEXT. В первом вслед за словом FOR указано начальное значение величины ритма опросов, за словом ТО – конечное значение, а после после слова STEP – шаг изменения величины ритма опросов. Выход из цикла происходит как только значение С превысит величину 15.
Методические указания к задачам 11-20
Содержание задач сводится в вычислению сумм n слагаемых и расчета, с помощью их, требуемых величин. Для решения надо организовать циклы по i, меняющегося от 1 до n.
Пример. Составить блок –схему алгоритма и программу расчета коэффициента корреляции по формуле
где х, у – значения пар признаков.
Для составления блок – схемы алгоритма и программы введем обозначения: х А, у В, х2 С, у2 D, ху Е. Блок -схема алгоритма расчета коэффициента корреляции в этом случае имеет вид (рис.2).
Для составления программы перейдем от символов в задаче к символам языка Бейсик:
i I, n N, x X, y Y, r R.
Программа расчета коэффициента корреляции с использованием оператора условного перехода имеет вид:
10 REM РАСЧЕТ КОЭФФИЦИЕНТА КОРРЕЛЯЦИИ
20 INPUT N
30 LET A=0\ LET B =0\ LET C =0\ LET D =0\ LET E =0
40 LET I =1
50 INPUT X,Y
60 LET A=A+X\ LET B = B+Y
70 LET C =C+X-2\ LET D =D+Y-2\ LET E =E+X*Y
80 LET I=I+1
90 IF I<=N GO TO 50
100 LET R =(N*E – A*B)\SQR ((N*C-A-2)*(N*D – B-2))
110 PRINT R
120 END
В программе в операторе 10 записан коментарий (название программы). Оператор 20 осуществляет ввод N (число пар значений переменных Х иУ). Оператор 30 придает значение 0 переменым А,В, С, D, Е. Оператор 40 придает значение 1 переменной I (начальное значение цикла). Оператор 50 осуществляет ввод значений переменных Х и У (попарно). Операторы 60 и 70 изменяют значения переменных А,В,С,D,Е (накапливают значения сумм). Оператор 80 увеличивает значение переменной I на 1. Оператор 90 осуществляет разветвление программы: если I N, то управление передается оператору50 (вводятся новые значения Х и У), в противном случае – оператору100. Оператор 100 осуществляет расчет значения R, а оператор 110 – печать. Оператор 120 прекращает вычисления.
При использовании операторов цикла программа принимает вид:
10 REM РАСЧЕТ КОЭФФИЦИЕНТА КОРРЕЛЯЦИИ
20 INPUT N
30 LET A=0\ LET B =0\ LET C =0\ LET D =0\ LET E =0
40 FOR I=1 TO N
50 INPUT X,Y
60 LET A=A+X\ LET B = B+Y
70 LET C =C+X-2\ LET D =D+Y-2\ LET E =E+X*Y
80 NEXT I
90 LET R =(N*E – A*B)\SQR ((N*C-A-2)*(N*D – B-2))
100 PRINT R
110 END
Цикл в программе организуется с помощью операторов 40 и 80.
Методические указания к задачам 21 -30
Решение задач сводится к составлению экономико-математических моделей в развернутом и матричном виде.
Пример. Составить экономико-математическую модель оптимизации суточного рациона кормления для коров со средней живой массой 500 кг и среднесуточным удоем 16 кг молока. Для обеспечения заданной продуктивности необходимо, чтобы в рационе содержалось не менее 12,9 кг корм.ед., 1390г переваримого протеина, 116г кальция, 72г фосфора, 523мг каротина. Сухого вещества в нем должно быть не более 20 кг.
Рацион составляется из комбикорма, сена клеверо –тимофеечного, соломы ячменной и силоса кукурузного. Содержание питательных веществ в кормах и их себестоимость представлены в табл.2.
В соответствии с зоотехническими требованиями отдельные группы кормов в рационе могут изменяться в следующих пределах (% к общему количеству кормовых единиц): концентрированные – от 10 до 30, грубые – от 20 до 35, сочные – от 30 до 50. Кроме того, в группе грубых – солома должна составлять не более 25%.
Критерий оптимальности – минимум себестоимости рациона.
Составим экономико – математическую модель оптимизации рациона кормления коров. Количество кормов, которое может войти в рацион обозначим через
х1 – комбикорм, кг;
х2 – сено клеверо-тимофеечное, кг;
х3 – солома ячменная, кг;
х4 – силос кукурузный, кг,
а общее количество кормовых единиц(кг) в рационе через х5.
Запишем систему ограничений в развернутом виде.
1. Ограничения по балансу питательных веществ в рационе:
1) общее количество кормовых единиц
0,9х1+0,5х2+0,36х3+0,2х4=х5
или после преобразований
0,9х1+0,5х2+0,36х3+0,2х4-х5=0;
2) кормовые единицы не менее
х5 12,9;
3) переваримый протеин не менее
112х1+52х2+12х3+14х4 1390;
4) кальций не менее
15х1+7,4х2+3,7х3+1,5х4 116;
5) фосфор не менее
13х1+2,2х2+1,2х3+0,5х4 72;
6) каротин не менее
30х2+4х3+15х4 523;
2. Ограничение по содержанию сухого вещества в рационе:
7) 0,87х1+0,83х2+0,85х3+0,26х4 20;
3. Ограничения по содержанию отдельных кормов в рационе:
8) концентрированные не менее
0,9х1 0,1х5;
или после преобразований
0,9х1 - 0,1х5 0;
9) концентрированные не более
0,9х1 0,3х5;
или после преобразований
0,9х1 -0,3х5 0;
10) грубые не менее
0,5х2+0,36х3 0,2х5
или после преобразований
0,5х2+0,36х3 -0,2х50;
11) грубые не более
0,5х2+0,36х3 0,35х5
или после преобразований
0,5х2+0,36х3 - 0,35х5 0;
12)