Расчеты по таблице перевозок пассажиров в Pascal, Microsoft Excel, MathСad

Определение количества пассажиров, перевозимых в местном сообщении по всем регионам (суммы данных по главной диагонали матрицы) с помощью табличного процессора MS Excel, пакета MathCad и среды программирования Pascal. Руководство программиста и оператора.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 28.05.2015
Размер файла 425,9 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Содержание

  • Введение
  • 1. Постановка задачи
  • 2. Решение задачи средствами Паскаль
    • 2.1 Алгоритм решения задачи, выданной преподавателем
    • 2.2 Руководство программиста
    • 2.3 Руководство оператора
  • 3. Результаты работы программы
    • 3.1 Решение данной задачи средствами MS Excel
    • 3.2 Решение задачи в среде MathCAD
  • Заключение
  • Литература
  • Приложение
  • Введение
  • Внедрение и широкое использование средств вычислительной техники является одним из главных факторов ускорения научно-технического прогресса в нашей стране. Стремительно возрастает роль ЭВМ в во всех областях человеческой деятельности. Без использования быстродействующих ЭВМ немыслимо решение задач интенсификации экономического развития ведущих отраслей народного хозяйства.
  • Темпы научно-технического прогресса, усиление роли науки в значительной степени определяются качеством и номенклатурой средств вычислительной техники и их программным обеспечением. Именно развитие этих средств обеспечивает успехи в автоматизации производственных процессов, в разработке новых технологий, в повышении эффективности труда и управления, в совершенствовании системы образования и в ускорении подготовки кадров.
  • Интенсивное развитие вычислительной техники, ее проникновение во все сферы человеческой деятельности ставит перед специалистами задачу широкого распространения компьютерной грамотности и использования ЭВМ в учебном процессе, в том числе в системе высшего образования.
  • Широкое и многообразное применение ЭВМ предъявляет все более высокие требования к их программному обеспечению. Разработка программ и программных комплексов приобретает характер индустриального производства. Значение программного обеспечения трудно переоценивать, т.к именно программы определяют и создают «интеллект» компьютера. В то же время процесс создания программ относится к одной из наиболее сложных сфер творческой деятельности человека, требующий больших усилий и специальной технологии разработки.
  • При составлении программ применяются различные языки программирования, среди которых Pascal занимает особое место. Отражая основные концепции структурного программирования, язык Pascal быстро завоевал популярность среди специалистов.
  • В данной курсовой работе необходимо научиться решать транспортные задачи средствами Pascal, Ms Excel, MathCad. [л. 3,5,7]

1. Постановка задачи

Требуется провести расчеты по таблице перевозок пассажиров между отдельными регионами с помощью 3-х приложений, а именно, табличного процессора MS Excel, пакета автоматизации математических и инженерных расчетов MathCAD и среды программирования Pascal ABC. [л. 2,4,6]

Необходимо:

а) найти итоги по строкам и столбцам таблицы;

б) определить сумму количества пассажиров, перевозимых в местном сообщении по всем регионам (сумма данных по главной диагонали матрицы)

в) выполнить индивидуальное задание:

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

г) распечатать исходную и результирующую (измененную) таблицу перевозок, а также все расчетные данные.

Исходные данные

Количество регионов N=6

Таблица 1.1

10000

13000

16000

23000

26000

32000

15000

14000

19000

25000

31000

34000

20000

17000

21000

22000

27000

31000

12000

16000

15000

24000

29000

35000

11000

21000

23000

30000

28000

19000

14000

24000

20000

18000

25000

29000

Названия регионов: Владивосток, Хабаровск, Благовещенск, Чита, Улан-Удэ, Иркутск [л.4]

2. Решение задачи средствами Паскаль

2.1 Алгоритм решения задачи

Алгоритм решения задачи смотрите в приложениях:

Блок-схему алгоритма основной программы смотрите в приложении А рис. 1

Блок-схему алгоритма процедуры vvod смотрите в приложение B рис. 2

Блок-схему алгоритма процедуры vivod смотрите в приложение B рис. 3

Блок-схему алгоритма процедуры sum_str смотрите в приложение B рис. 4

Блок-схему алгоритма процедуры sum_stl смотрите в приложение B рис. 5

Блок-схему алгоритма процедуры sum_diag смотрите в приложение B рис. 6

Блок-схему алгоритма процедуры max_perevozka смотрите в приложение B рис. 7

Блок-схему алгоритма процедуры umenshenie смотрите в приложение B рис. 8

2.2 Руководство программиста

На основании алгоритма написана программа на языке Pascal. Текст программы находится в файле KR.pas. Блок-схему основной программы смотрите в приложении А. Процедуры, входящие в программу выполняют следующие действия:

Procedure vvod - загружает таблицу исходных данных из файла.

Вход: ничего

Выход: таблица исходных данных

Блок-схему этой процедуры смотрите в приложении В рис. 2, текст процедуры смотрите в приложении C, стр.21 , скрин-шот работы процедуры смотрите приложение D рис.9

procedure vivod- выводит матрицу на экран монитора.

Вход: ничего

Выход: таблица исходных данных

Блок-схему этой процедуры смотрите в приложении В рис.3, текст процедуры смотрите в приложении C, стр.21 , скрин-шот работы процедуры смотрите приложение D рис.10

procedure sum_str- вычисляет сумму по строкам.

Вход: ничего

Выход: таблица с суммой по строкам

Блок-схему этой процедуры смотрите в приложении В рис.4, текст процедуры смотрите в приложении C, стр.21 , скрин-шот работы процедуры смотрите приложение D рис.11

procedure sum_stl- вычисляет сумму столбцов.

Вход: ничего

Выход: таблица с суммой по столбцам

Блок-схему этой процедуры смотрите в приложении В рис.5, текст процедуры смотрите в приложении C, стр.22 , скрин-шот работы процедуры смотрите приложение D рис.12

procedure sum_diag-эта процедура находит сумму по главной диагонали, т.е. общее количество пассажиров перевозимых в местном сообщении.

Вход: ничего

Выход: Сумма по главной диагонали.

Блок-схему этой процедуры смотрите в приложении В рис 6, текст процедуры смотрите в приложении C, стр.22 , скрин-шот работы процедуры смотрите приложение D рис.13

procedure max_perevozka - эта процедура нахождения максимальной перевозки выше побочной диагонали .

Вход: ничего.

Выход: регион с максимальным количеством пассажиров, вывозимых на другие регионы.

Блок-схему этой процедуры смотрите в приложении В рис.7 , текст процедуры смотрите в приложении C, стр.22 , скрин-шот работы процедуры смотрите приложение D рис.14

procedure umenshenie- эта процедура уменьшения количества пассажиров, вывозимых на любой другой регион на 7%.

Вход:ничего

Выход: Результирующая таблица пассажироперевозок.

Блок-схему этой процедуры смотрите в приложении В рис 8, текст процедуры смотрите в приложении C, стр.23 , скрин-шот работы процедуры смотрите приложение D рис.15

2.3 Руководство оператора

Чтобы запустить программу, нужно запустить файл KR.ехе.

После запуска программы происходит считывание данных из бестиповых файлов и на экране монитора появляется меню программы (см. приложение D рис 9)

При выборе первого пункта меню на экран монитора будет выведена таблица исходных данных(см. приложение D рис 10)

Второй пункт меню выводит количество вывезенных пассажиров из регионов (см. приложение D рис. 11)

Третий пункт меню выводит на экран количество ввезенных пассажиров в регионы (см. приложение D рис. 12)

Четвертый пункт меню выводит на экран таблицу местного сообщения (см. приложение D рис. 13)

Пятый пункт меню определяет регион для максимальной перевозки, расположенной выше побочной диагонали (см. приложение D рис. 14)

Шестой пункт меню уменьшает все размеры прибытия количества пассажиров по региону, принимающему максимальное количество пассажиров на 7%.(см. приложение D рис. 15)

Пункт № 0 позволяет пользователю выйти из программы.

матрица табличный pascal

3. Результаты работы программы

3.1 Решение данной задачи средствами MS Excel

Таблица 3.1 Таблица исходных данных

Таблица 3.2 Итоги по строкам и столбцам

Расчёты по заданию

При помощи функции “СУММ(ячейка1:ячейка2)” мы высчитали суммы столбцов, суммы столбцов без местного сообщения и суммы строк.

При помощи функций “ИНДЕКС”, “ПОИСКПОЗ” и “МАКС” находим следующие значения в расчетах:

Таблица 3.3

Таблица 3.4

Получили результат:

Таблица 3.5

После нахождения максимального региона уменьшаем максимальный столбец на 7% и получаем таблицу:

Таблица 3.6

Расчет выполнила следующим образом:

Таблица 3.7

Диаграмма по расчетным данным

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

Рис. 1

3.2 Решение задачи в среде MathCAD

Исходные данные:

Найдём сумму по строкам, т.е. общее количество пассажиров, вывозимых с каждого региона в любой другой:

Найдём сумму по столбцам, т.е. общее количество пассажиров, ввозимых с каждого региона в любой другой:

Найдём сумму по главной диагонали, т.е. общее количество пассажиров, перевозимых в местном сообщении:

Определяем регионы для максимальной перевозки расположенной выше побочной диагонали:

Максимальная перевозка составляет:

Измененные данные:

Заключение

Мы произвели расчеты по таблице перевозок пассажиров в Pascal., Microsoft Excel, MathCAD. Результаты совпали, значит можно сделать вывод, что поставленная задача решена верно.

Выполнив курсовую работу, я ознакомилась с основными типами языка Паскаль, структурой программы, алгоритмами решения, работой с циклическими операторами, массивами, процедурами и т.д. Приобрела навыки в решении задач на языке программирования Паскаль, составлении блок-схем, печати программ, работы в MathСad, MS Excel. Особое внимание в данной курсовой работе уделено операторам языка Паскаль. При помощи этого языка программирования решена задача, при тестировании получены и приведены результаты, которые затем совпали с результатами решения задачи в других приложениях.

В оболочке MS Excel получены навыки по работе с таблицами, формулами, диаграммами.

В программе MathCad научилась производить различные операции над матрицами при помощи формул, арифметических выражений и т.д.

Литература

1. Онлайн-карта автодорог России.

2. Борисенко М.В. Основы информационных технологий / М.В. Борисенко - Гомель: УО «БелГУТ››, 2005 - 180 с.

3. Гораев О.П., Лыч Ю.П. Электронные таблицы MS Excel: практикум по компьютерным технологиям / О.П. Гораев, Ю.П. Лыч. - Гомель : БелГУТ, 2003. - 67 с.

4. Гораев О.П., Текстовый процессор MS Word: практикум по компьютерным технологиям/ О.П. Гораев. - Гомель : БелГУТ, 2003. - 68 с.

5. Кейзер А.П. Информатика. Программирование на языке Паскаль: практикум по лабораторным работам.Ч.1/ А.П. Кейзер, Ю.А. Пшеничнов. - Гомель: БелГУТ; Каф. «Информационные технологии»; 2001 - 44 с.

6. Н.А. Рогачёва, М.В. Борисенко Т.Н. Литвинович «Информатика. Программирование на языке Паскаль» 1 и 2 часть, Гомель 2004.

7. Шушкевич Г.Ч. Введение в Mathcad 2000 : учеб. пособие / Г.Ч. Шушкевич, С.В. Шушкевич. - Гродно : ГрГУ, 2001. - 140 с.

Приложение А

Рисунок 1- Блок-схема главной программы

Приложение B

Рисунок 2- Блок-схема процедуры vvod

Рисунок 3- Блок-схема процедуры vivod

Рисунок 4 - Блок-схема процедуры sum_str

Рисунок 5 - Блок-схема процедуры sum_stl

Рисунок 6 - Блок-схема процедуры sum_diag

Рисунок 7- Блок-схема процедуры max_perevozka

Рисунок 8- Блок-схема процедуры umenshenie

Приложение С

program Kursach;

type

mas=array[1..100,1..100] of real;

mas1=array[1..100] of real;

var

A,B:mas;

n,i,j:integer;

fd,f1:text;

region:array [1..100] of string;

p: integer;

imax, jmax:integer;

{-----------------------------------}

{процедура считывания матрицы из файла }

procedure vvod(n:integer;var A:mas);

var

i,j:integer;

begin

for i:=1 to n do readln(f1,region[i]);

for i:=1 to n do

for j:=1 to n do

read(fd,A[i,j]);

end;

{-----------------------------------}

{процедура вывода матрицы на экран монитора }

procedure vivod(n:integer;B:mas);

var

i,j:integer;

begin

writeln ('___________________________________________________');

Write(' |');

for i:=1 to n do write(region[i]:13, ' |');

writeln;

writeln ('____________________________________________________');

for i:=1 to n do

begin

write(region[i]:13,' |');

for j:=1 to n do write(B[i,j]:13:2,' |');

writeln;

writeln ('____________________________________________________');

end;

end;

{-----------------------------------}

{процедура нахождения суммы по строкам }

procedure sum_str(n:integer; A:mas);

var

i,j:integer;

s:real;

begin

for i:=1 to n do

begin

s:=0;

for j:=1 to n do s:=s+A[i,j];

writeln('из региона ', region[i],' вывезено ',s, ' пассажиров');

end;

writeln;

end;

{-----------------------------------}

{процедура нахождения суммы по столбцам }

procedure sum_stl(n:integer; A:mas);

var

i,j:integer;

s:real;

begin

for j:=1 to n do

begin

s:=0;

for i:=1 to n do s:=s+A[i,j];

writeln('в регион ', region[j],' ввезено ', s, ' пассажиров');

end;

writeln;

end;

{-----------------------------------}

{процедура нахождения суммы данных по главной диагонали}

procedure sum_diag(n:integer; A:mas);

var

i,j:integer;

s:real;

begin

s:=0;

for i:=1 to n do

for j:=1 to n do

if i=j then s:=s+A[i,j];

writeln('Количества пассажиров, перевозимых в местном сообщении по всем регионам равно ',s);

end;

{-----------------------------------}

{процедура нахождения максимальной перевозки выше побочной диагонали}

procedure max_perevozka(n:integer; A:mas);

var

i,j:integer;

max:real;

begin

max:=A[1,1];

imax:=1;

jmax:=1;

for i:=1 to n do

for j:=1 to n do

if (i+j<n+1) and (A[i,j]>max) then

begin

max:=A[i,j];

imax:=i;

jmax:=j;

end;

writeln('Из региона ', region[imax],' вывезено в регион ',region[jmax],' ', max, ' пассажиров');

end;

{-----------------------------------}

{процедура уменьшения количества пассажирова, вывозимого на любой другой регион на 7%}

procedure umenshenie(n:integer; A:mas; var B:mas);

var

i,j:integer;

begin

writeln ('___________________________________________________');

Write(' |');

for i:=1 to n do write(region[i]:13, ' |');

writeln;

writeln ('____________________________________________________');

for i:=1 to n do

begin

write(region[i]:13,' |');

for j:=1 to n do

begin

B[i,j]:=A[i,j];

if (j=jmax) then B[i,j]:=A[i,j]*0.93;

write(B[i,j]:13:2,' |');

end;

writeln;

writeln ('____________________________________________________');

end;

end;

begin

n:=6;

Assign (f1,'НазванияРегионов');

Reset (f1);

Assign(fd,'ТаблицаПеревозок');

reset(fd);

writeln('Ввод исходных данных из документа.');

vvod(n,A);

while true do

begin

writeln;writeln;

writeln ('Выберите пункт меню!');

writeln ('1 - вывести таблицу пассажироперевозок');

writeln ('2 - найти количество вывезенных пассажиров из регионов');

writeln ('3 - найти количество ввезенных пассажиров в регионы');

writeln ('4 - найти сумму элементов по главной диагонали');

writeln ('5 - Определить регион для максимальной перевозки пассажиров ,расположенной выше побочной диагонали');

writeln ('6 - Все размеры прибытия пассажиров по региону, принимающему максимальное количество пассажиров, уменьшить на 7%');

writeln ('0 - Заверщение работы программы');

readln(p);

writeln;writeln('Р Е З У Л Ь Т А Т выбора пункта ', p);

case p of

1: BEGIN

writeln('Исходные данные:');

vivod(n,A);

END;

2: BEGIN

writeln;

writeln('Количество вывезенных пассажиров из регионов:');

sum_str(n,A);

END;

3: BEGIN

writeln;

writeln('Количество ввезенных пассажиров в регионы:');

sum_stl(n,A);

END;

4: BEGIN

sum_diag(n,A);

END;

5: BEGIN

writeln;

max_perevozka(n,A);

END;

6: BEGIN

writeln;

max_perevozka(n,A);

writeln('Измененные данные:');

umenshenie(n,A,B);

END;

0:

BEGIN

Close(fd);

close(f1);

writeln('Программа завершила работу!');

halt;

END;

else writeln('Неверно выбран пункт меню.');

end;

end;

end.

Приложение D

Результаты решения задачи

Исходные данные из файла

Рис.9 - Меню

Пункт меню 1 - вывести таблицу пассажироперевозок

Рис.10 - таблица исходных данных

Пункт меню 2 - найти количество вывезенных пассажиров из регионов

Рис 11- сумма по строкам

Пункт меню 3 - найти количество ввезенных пассажиров в регионы

Рис 12- сумма по столбцам

Пункт меню 4 - найти сумму элементов по главной диагонали

Рис. 13 - Сумма пассажироперевозок в местном сообщении

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

Регион с максимальным количеством пассажиров

Рис.14- максимальная перевозка

Пункт меню 6 - Все размеры прибытия пассажиров по региону, принимающему максимальное количество пассажиров, уменьшить на 7%

Результирующая таблица

Рис.15-измененная таблица пассажироперевозок

Размещено на Allbest.ru


Подобные документы

  • Расчеты по таблице перевозок грузов между отдельными регионами. Решение задачи управления процессами перевозок в среде Pascal. Решение задачи средствами MS Excel. Исходные данные и итоги по строкам и столбцам. Решение задачи средствами MATHCAD.

    курсовая работа [1,8 M], добавлен 25.03.2015

  • Характеристика и основные особенности языка Pascal. Создание числового массива с использованием встроенной функции. Использование записей, массивов и файлов. Обработка и графическая визуализация данных средствами табличного процессора и пакета MathCAD.

    курсовая работа [1,0 M], добавлен 22.08.2012

  • Разработка алгоритма и написание программы на языке Object Pascal, предназначенной для расчета траверса крюка мостового крана на изгиб. Определение расчетных размеров крана с помощью табличного процессора Microsoft Excel. Блок-схема и алгоритм расчета.

    курсовая работа [519,3 K], добавлен 03.06.2010

  • Работа с матрицами и векторами в программе MathCAD, Pascal, Excel. Поиск экстремума целевой функции двух переменных. Дифференциальное уравнения первого порядка с начальными условиями. Определение оптимального плана перевозок. Функция одной переменной.

    курсовая работа [21,5 M], добавлен 11.02.2013

  • Определение зависимости между экспериментальными данными при помощи аппроксимации, особенности решения поставленной задачи различными способами, проведение расчетов с помощью табличного процессора Microsoft Excel и среды программирования Turbo Pascal 7.0.

    курсовая работа [765,0 K], добавлен 25.02.2012

  • Решение циклических программ и программ вычисления функции с условием. Уравнение в табличном редакторе Microsoft Excel и в Turbo Pascal. Вычисление определенного интеграла методом прямоугольников, трапеции, Симпсона. Линейные и нелинейные уравнения.

    курсовая работа [233,6 K], добавлен 27.12.2009

  • Структура программы Pascal и алгоритмы решения задач. Работа с циклическими операторами, массивами, процедурами. Составление блок-схем задач. Операции над матрицами в программе MathCad. Работа формулами, графиками и диаграммами в оболочке MS Excel.

    курсовая работа [459,0 K], добавлен 13.08.2012

  • Характеристика принципов решения инженерных задач с помощью различных информационных компьютерных комплексов. Решение задачи на языке программирования Pascal, с помощью средств математического пакета MathCAD, так же с помощь табличного процессора Excel.

    курсовая работа [218,1 K], добавлен 22.08.2013

  • Использование текстового редактора MS Word для создания текстовых документов. Расчеты и анализ данных с помощью табличного процессора Excel. Алгоритмизация и программирование на Pascal. Проектирование реляционных баз данных с помощью СУБД Access.

    контрольная работа [571,7 K], добавлен 22.02.2012

  • Понятие алгоритма, его свойства и способы описания. Схемы алгоритмических конструкций: линейная, разветвляющаяся, циклическая. Особенности и применение электронных таблиц Excel. Задачи, решаемые с помощью системы Mathcad. История создания языка Pascal.

    курсовая работа [601,9 K], добавлен 20.11.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.