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

Автор работы: Пользователь скрыл имя, 10 Марта 2011 в 13:53, курсовая работа

Описание работы

Транспортная задача делится на два вида: транспортная задача по критерию стоимости- определение плана перевозок, при котором стоимость груза была бы минимальна; транспортная задача по критерию времени- более важным является выигрыш по времени.

Транспортная задача по критерию стоимости является частным случаем задачи линейного программирования и может быть решена симплексным методом. Однако в силу особенностей задачи, она решается намного проще.

Содержание работы

ВВЕДЕНИЕ ……………………………………………………………………...2

1. ОБЩАЯ ЧАСТЬ………………………………………………………………5

1.1. Математическая постановка задачи……………………………….5

1.2. Арифметическое преобразование…………………………………7

1.3. Модели…………………………………………………………………......8

1.3.1. Открытая модель…………………………………………………8

1.3.2. Закрытая модель…………………………………………………8

1.4. Составление опорного плана транспортной задачи. Методы составления опорного плана………………………………………………9

1.4.1. Метод северо-западного угла…………………………………..9

1.4.2. Метод наименьшей стоимости…………………………………11

1.5. Методы решения транспортной задачи……………………………13

1.5.1 Метод потенциалов……………………………………………….13

1.5.1.1 Пример решения методом потенциалов………………14

1.5.2 Метод прямоугольников……………………………………….16

1.5.2.1 Пример решения методом прямоугольников.………..18

2. Описание решения Транспортной задачи с использованием стандартных программных средств……………………………………20

3. Описание входной информации…………………………………......24

4. Описание выходной информации………………………………......24

5. Описание программных средств решения задачи………………25

6. Инструкция для пользователя……………………………………......26

7. Инструкция для программиста……………………………………......27

ЗАКЛЮЧЕНИЕ…………………………………………………………………28

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ……………………......29

ПРИЛОЖЕНИЕ А………………………………………………………………30

Файлы: 1 файл

КУРСОВАЯ)).doc

— 568.50 Кб (Скачать файл)

 

      СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

 
  1.  Общий курс высшей математики для экономистов. Учебник / под ред В.И. Ермакова.- М.: ИНФА – М. – 656 с. – (серия «высшее образование»).
  2. Сборник задач и упражнений по высшей математике: математическое программирование: учебник пособие / А.В. Кузнецов, В.А. Сакович, Н.И. Холод и др; МН.: выш. ик., 2002. – 447с.:ил.
  3. Т.Л. Партыкина, И.И. Попов Математические методы: учебник. – М.: ФОРУМ: ИНФА-М, 2005. – 464 с.: ил – (профессиональное образование)
  4. И.Г. Семакин Основы программирования: учебник для сред. проф. Образования / И.Г. Семакин, А.П.Шестаков. – 2-е изд., стер,- М.: Издательский центр «Академия», 2003.-432 с.
  5. Г.С. Малик Основы экономики и математические методы в планировании. Москва Высшая школа 1988 г.
  6. А.А. Глаголев, Т.В. Солнцева Курс высшей математики Москва Высшая школа 1971 г.

 

      ПРИЛОЖЕНИЕ А

program zadacha;

uses crt;

const w=('_____________');

const e=('-------------');

label q;

var

  a,a1,b,b1,c,c1,d,d1,a2,b2,c2,d2,m,n,x,s1,s2: integer;

 begin

  clrscr;

writeln('Здравствуйте!');

 writeln('Вас приветствует программа решения   транспортной задачи методом прямоугольника - TranZet, ver 1/1');

writeln('Данная версия делает из неправельного прямоугольника - правельный');

 begin 

    writeln('введите 1 - продолжить, 0 - выйти');

     readln(n);

       if n = 1 then goto q end; exit;

a:=0; b:=0; c:=0; d:=0; x:=0; m:=0;

q:writeln;

 writeln('введите перевозки X1,1 , X1,2 , X2,1 , X2,2');

   writeln('Для выхода из программы нажмите -1, чтобы начать сначала начала нажмите -2');

    readln(a); begin if (a=-1) then exit;if a=-2 then goto q end;

    readln(b); begin if (b=-1) then exit;if b=-2 then goto q end;

    readln(c); begin if (c=-1) then exit;if c=-2 then goto q end;

    readln(d); begin if (d=-1) then exit;if d=-2 then goto q end;

 writeln('введите тарифы С1,1 , C1,2 , C2,1 , C2,2');

   writeln('Для выхода из программы нажмите -1, чтобы начать сначала начала нажмите -2');

    readln(a1); begin if (a1=-1) then exit;if a1=-2 then goto q end;

    readln(b1); begin if (b1=-1) then exit;if b1=-2 then goto q end;

    readln(c1); begin if (c1=-1) then exit;if c1=-2 then goto q end;

    readln(d1); begin if (d1=-1) then exit;if d1=-2 then goto q end;

writeln;

writeln('НАШ ПРЯМОУГОЛЬНИК');

writeln(w);

writeln('|   |',a1,'|   |',b1,'|');

writeln('|',a:5,'|',b:5,'|');

  writeln(e);

writeln('|   |',c1,'|   |',d1,'|');

writeln('|',c:5,'|',d:5,'|');

writeln(e);

 begin

  if (a>0) and (b>0) and (c>0) and (d>0) and ((a1+d1)<>(b1+c1))then writeln('первый тип - неправильный')else

    if (a=0) and (d=0) and ((a1+d1)<(b1+c1)) then begin writeln('третий тип - неправильный');

          if (b>c) then x:=c else x:=b;  a2:=a+x; b2:=b-x; c2:=c-x; d2:=d+x; m:=((b1+c1)-(a1+d1))*x; writeln('МОЩНОСТЬ = ',M); end else

      if (c=0) and (b=0) and ((b1+c1)<(a1+d1)) then begin writeln('третий тип - неправильный');

            if (a>d) then x:=d else x:=a; a2:=a-x; b2:=b+x; c2:=c+x; d2:=d-x; m:=((a1+d1)-(b1+c1))*x;writeln('МОЩНОСТЬ = ',M); end else

        if (a=0) and ((a1+d1)<(b1+c1)) then begin writeln('второй тип - неправильный');

              if (b>c) then x:=c else x:=b; a2:=a+x; b2:=b-x; c2:=c-x; d2:=d+x; m:=((b1+c1)-(a1+d1))*x;writeln('МОЩНОСТЬ = ',M); end else

          if (b=0) and ((b1+c1)<(a1+d1)) then begin writeln('второй тип - неправильный');

                if (a>d) then x:=d else x:=a; a2:=a-x; b2:=b+x; c2:=c+x; d2:=d-x; m:=((a1+d1)-(b1+c1))*x;writeln('МОЩНОСТЬ = ',M); end else

            if (c=0) and ((b1+c1)<(a1+d1)) then begin writeln('второй тип - неправильный');

                  if (a>d) then x:=d else x:=a; a2:=a-x; b2:=b+x; c2:=c+x; d2:=d-x; m:=((a1+d1)-(b1+c1))*x; writeln('МОЩНОСТЬ = ',M);end else

              if (d=0) and ((a1+d1)<(b1+c1)) then begin writeln('второй тип - неправильный');

                    if (b>c) then x:=c else x:=b; a2:=a+x; b2:=b-x; c2:=c-x; d2:=d+x; m:=((b1+c1)-(a1+d1))*x; writeln('МОЩНОСТЬ = ',M);end

                                                                                                                     else begin writeln('правильный');

   writeln;

   writeln;

   writeln('НАШ РЕШЕННЫЙ ПРЯМОУГОЛЬНИК');

   writeln(w);

   writeln('|   |',a1,'|   |',b1,'|');

   writeln('|',a:5,'|',b:5,'|');

   writeln(e);

   writeln('|   |',c1,'|   |',d1,'|');

   writeln('|',c:5,'|',d:5,'|');

   writeln(e);

     begin

        writeln('Нажмите 0 - чтобы выйти, нажмите 1 - чтобы повторить');

            readln(n);

                 if n = 1 then goto q end; exit; end

end;

   writeln;

   writeln;

   writeln('НАШ РЕШЕННЫЙ ПРЯМОУГОЛЬНИК');

   writeln(w);

   writeln('|   |',a1,'|   |',b1,'|');

   writeln('|',a2:5,'|',b2:5,'|');

   writeln(e);

   writeln('|   |',c1,'|   |',d1,'|');

   writeln('|',c2:5,'|',d2:5,'|');

   writeln(e);

     begin

        writeln('Нажмите 0 - чтобы выйти, нажмите 1 - чтобы повторить');

Информация о работе Транспортная задача