Транспортная задача

 

откуда    куда     сколько     мин= 193

1           1         6

2           1         1

2           2         4

2           3         1

3           3         6

3           4         9

Решение N1

                 7  4  7  9

              6  9  7  4  7

              6  6  6  7  8

             18  9 10  2 10

Решение:

Откуда   Куда Сколько

1          4     6

2          1     2

2          2     4          min F= 167

3          1     5 

3          3     7

3          4     3

 

10 dim a(2),b(29,c(2,2)

15 read a(1),a(2),b(19,b(29,c(1,1),c(1,2),c(2,1),c(2,2)

20 v1=-b(1)+a(2)

30 v2=c(1,1)+c(2,2)-c(2,1)-c(1,2)

40 v3=c(1,2)*a(1)+c(2,1)*b(1)+c(2,2)*v1

50 if a(1)<b(1) then v4=a(1) else v4=b(1)

60 if v1<=0 then if v4+v1>=0 then v4=v1

70 if v2<>0 then y$="решение одно" else y$="решений много"

80 if v2>0 then goto 85 else goto 87

85 x=0:z=v3:goto 90

87 x=v4:z=v3+v2*v4

90 x(1,1)=x:x(1,2)=a(1)-x:x(2,1)=b(1)-x:x(2,2)=a(2)-b(1)+x

100 print x(1,1),x(1,2),x(2,1),x(2,2)

110 data 15,15,10,20,1,3,2,5

120 print z;

130 print y$;

140 end

  

Найти оптимальное назначение, если матрица полезности задана

    1  2  3  4

1   3  4  8  4

2   5  5  8  7

3   4  4  9  6

4   8  5  8  3

Решение:

Работник должность

1            2

2            4

3            3           max F= 28

4            1      

                 Задачи с графами

 

 

1 2 2    2 5 5   5 7 6

1 4 10   3 6 1   6 7 9

1 3 4    4 5 8  3 4 3

         5 6 7

    х1  х2  х3  х4  х5  х6  х7

х1  0   2   4   10  М   М   М

х2  М   0   М   М   5   М   М

х3  М   М   0   3   М   1   М

х4  М   М   М   0   8   7   М

х5  М   М   М   М   0   М   6

х6  М   М   М   М   М   0   9

х7  М   М   М   М   М   М   0

 20 n=7:m=10

30 input"введите номер начальной вершины";x0

35 dim d(m),x(m),y(m),l(m)

36 for i=1 to 10

40 read x(i),y(i),l(i)

41 next

50 for k=1 to n

60 d(k)=100000!

70 next

80 d(x0)=0

90 k=0

110 for r=1 to m

115 i=x(r):j=y(r)

120 if d(j)-d(i)>l(r) then d(j)=d(i)+l(r):k=1

125 next

130 if k>0 then k=0:goto 90

160 data 1,2,2,1,4,10,1,3,4,2,5,5,3,6,1,3,4,3,4,5,8,4,6,7,5,7,

    6,6,7,9

170 for i=1 to m

180 print d(i);

190 next

 20 n=7

35 dim c(n,n)

36 for i=1 to n

40 for j=1 to n

43 read c(i,j)

44 next j

45 next i

50 for k=1 to n

60 for i=1 to n

70 for j=1 to n

80 if c(i,j)>c(i,k)+c(k,j) then c(i,j)=c(i,j)=c(i,k)+c(k,j)

100 next j

120 next i

130 next k

160 data 0,2,4,10,100,100,100,100,0,100,100,5,100,100,100,100

    0,3,100,1,100,100,100,100,0,8,7,100,100,100,100,100,0,100,

6,100,100,100,100,100,0,9,100,100,100,0,100,100,0

170 for i=1 to n

171 for j=1 to n

180 print c(i,j);

190 next j

200 next i