Методы решения транспортной задачи (метод потенциалов)

Автор: Пользователь скрыл имя, 17 Мая 2012 в 00:29, курсовая работа

Краткое описание

Я выбрал эту тему курсовой работы, потому что каждый человек ежедневно, не всегда осознавая это, решает проблему: как получить наибольший эффект, обладая ограниченными средствами. Наши средства и ресурсы всегда ограничены. Жизнь была бы менее интересной, если бы это было не так. Чтобы достичь наибольшего эффекта, имея ограниченные средства, надо составить план, или программу действий.

Оглавление

Введение 4
1 Транспортная задача: общая постановка, типы и виды моделей 5
1.1 Общая постановка, цели, задачи 5
1.2 Основные типы, виды моделей 6
2. Методы решения транспортной задачи 11
2.1 Диагональный метод, или метод северо-западного угла 11
2.2 Метод минимального элемента 13
2.3 Метод наименьшей стоимости 15
2.4 Скриншоты курсового программного продукта 18
2.5 Листинг программы 19
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 48

Файлы: 1 файл

Печать.docx

— 220.83 Кб (Скачать)

 

      s := InputBox( 'Введите цену', '', '1' );

 

      l.i1 := i1;

      l.i2 := i2;

      l.val := StrToInt( s );

      fLines.Add( l );

    end;

end;

 

 

procedure TForm1.Button8Click(Sender: TObject);

begin

  fLines.Clear;

  fFigures.Clear;

 

  Redraw;

end;

 

 

procedure TForm1.PaintBox1MouseDown(Sender: TObject; Button: TMouseButton;

  Shift: TShiftState; X, Y: Integer);

var

  i: integer;

begin

  i := IsOver( X,Y );

 

  if (i < 0) then

    exit;

 

  if (Button = mbLeft) then

    fMouseState := 1

  else if (Button = mbRight) then

    fMouseState := 2;

 

  fMouseInd := i;

end;

 

procedure TForm1.PaintBox1MouseMove(Sender: TObject; Shift: TShiftState; X,

  Y: Integer);

var

  fig: TFigure;

begin

  if (fMouseState = 1) then

    begin

      fig := fFigures.Items[fMouseInd];

 

      fig.x := X;

      fig.y := Y;

 

      Redraw;

    end

  else if (fMouseState = 2) then

    begin

      fig := fFigures.Items[fMouseInd];

 

      Redraw;

 

      PaintBox1.Canvas.MoveTo( fig.x, fig.y );

      PaintBox1.Canvas.LineTo( x, y );

    end;

end;

 

procedure TForm1.PaintBox1MouseUp(Sender: TObject; Button: TMouseButton;

  Shift: TShiftState; X, Y: Integer);

var

  i: integer;

begin

  i := fMouseState;

  fMouseState := 0;

 

  if (i = 2) then

    begin

      i := IsOver( x,y );

 

      Redraw;

 

      if (i < 0) then

        exit;

 

      AddRemoveLine( fMouseInd, i );

    end;

 

  Redraw;

end;

 

procedure TForm1.PaintBox1Paint(Sender: TObject);

begin

  Redraw;

end;

 

procedure TForm1.Button7Click(Sender: TObject);

var

  index, c1, c2: integer;

  fig, fig2: TFigure;

  l: TLine;

begin

  c1 := 0;

  c2 := 0;

 

  for index := 0 to fFigures.Count-1 do

    begin

      fig := fFigures.Items[index];

      if (fig.flag = 0) then

        inc(c1)

      else

        inc(c2);

    end;

 

  StringGrid1.ColCount := c2 + 2;

  StringGrid1.RowCount := c1 + 2;

 

  c1 := 0;

  c2 := 0;

 

  for index := 0 to fFigures.Count-1 do

    begin

      fig := fFigures.Items[index];

 

      if (fig.flag = 0) then

        begin

          StringGrid1.Cells[1,c1+2] := IntToStr( fig.val );

          fig.p := c1;

          inc( c1 );

        end

      else

        begin

          StringGrid1.Cells[c2+2,1] := IntToStr( fig.val );

          fig.p := c2;

          inc( c2 );

        end;

    end;

 

  for index := 0 to fLines.Count-1 do

    begin

      l := fLines.Items[index];

 

      fig := fFigures.Items[ l.i1 ];

      fig2 := fFigures.Items[ l.i2 ];

 

      if (fig.flag = fig2.flag) then

        continue;

 

      if (fig.flag = 0) then

        StringGrid1.Cells[ fig2.p+2, fig.p+2 ] := IntToStr( l.val )

      else

        StringGrid1.Cells[ fig.p+2, fig2.p+2 ] := IntToStr( l.val );

    end;

 

  Button2Click( nil );

end;

 

end.

 

 

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

 

  1. Апатенок Р.Ф. Математика для экономистов. М, Просвещение, 2011.
  2. Баумоль У. Экономическая теория и исследование операций. – М.; Наука, 2009.
  3. Большев Л.Н., Смирнов Н.В. Таблицы математической статистики. М.: Наука, 2006.
  4. Боровков А.А. Математическая статистика. М.: Наука, 2007.
  5. Акулич И.Л. Математическое программирование в примерах и задачах: учебное пособие для ВУЗов. - М.: Высшая школа, 2007
  6. Корн Г., Корн Т. Справочник по математике для научных работников и инженеров. - СПБ: Издательство «Лань», 2007.
  7. Коршунов Д.А., Чернова Н.И. Сборник задач и упражнений по математической статистике. Новосибирск: Изд-во Института математики им. С.Л.Соболева СО РАН, 2012.
  8. Красс М. Математика для экономических специальностей. Учебник. 3-е изд., перераб и доп. М, Экономист, 2011.
  9. Красс М.С., Чупрынов Б.П. Основы математики и ее приложения в экономическом анализе: Учебник. – 3-е изд., исп. – М.: Дело, 2012.
  10. Кузнецов А.В., Сакович В.А., Холод Н.И. Высшая математика. Математическое программирование. - Минск, Высшая школа, 2007
  11. Пехелецкий И.Д. Математика: учебник для студентов. - М.: Академия, 2007.
  12. Павлова Т.Н, Ракова О.А. Линейное программирование. Учебное пособие. - Димитровград, 2010.
  13. Павлова Т.Н, Ракова О.А. Решение задач линейного программирования. Учебное пособие. - Димитровград, 2008.

Информация о работе Методы решения транспортной задачи (метод потенциалов)