Реферат: Применение программных комплексов для решения инженерных задач
--PAGE_BREAK--1.2 Программа решения задачи на языке ПаскальProgram perevozki;
uses crt;
const n=10;
Type Mas=array[1..n,1..n]of real;
Var i,j,k:byte;
S:real;
A:mas;
f1,f2:text;
sum_po_strokam:array[1..n] of real;
sum_po_stolscam:array[1..n] of real;
sum_po_stolscam_bez_MC:array[1..n] of real;
max:real;
jmax:byte;
imax:byte;
Reg:array[1..n] of string;
Procedure name;
begin
for i:=1 to n do
begin
Writeln('введите название i-региона ');
read(Reg[i]);
end;
end;
{ввод таблицы грузоперевозок в регионах РБ}
Procedure vvod(n:byte; var A:mas);
begin
reset(f1);
for i:=1 to n do
begin
for j:=1 to n do
read(f1,A[i,j]);
readln(f1);
end;
close(f1);
end;
{вывод таблицы грузоперевозок по пунктам в файл f2}
Procedure Vivodvfile(n:byte; A:Mas);
begin
writeln(f2,' _________________________________________________________________');
writeln(f2);
write(f2, ' ');
for i:=1 to n do
write(f2,Reg[i]:7,' ');
writeln(f2);
writeln(f2,' _________________________________________________________________');
for i:=1 to n do
begin
write(f2, Reg[i]:12,' ');
for j:=1 to n do
write(f2,A[i,j]:8:1);
writeln(f2);
end;
writeln(f2,' _________________________________________________________________');
writeln(f2);
end;
{вывод данной программы}
Procedure Schit (n:byte; A:Mas);
begin
write(' ');
for i:=1 to n do
write( reg[i]:10);
writeln;
writeln;
for i:=1 to n do
begin
write(reg[i]:10,' !') ;
for j:=1 to n do
write(A[i,j]:10:1);
write(' !') ;
writeln;
writeln();
end;
end;
{определение количества грузов, перевозимых в местном сообщение в регионах РБ}
Function diag(n:byte; A:Mas):real;
var i,j:byte;s:real;
begin
s:=0;
for i:=1 to n do
s:=s+A[i,i];
diag:=s;
writeln('Cумма количества грузов, перевозимых в местном сообщении по всем регионам равна ', s);
writeln;
end;
{нахождение итогов по регионам вывоза грузов}
Procedure Sum_strok(n:byte;A:Mas);
begin
for j:=1 to n do
sum_po_strokam[i]:=0;
for j:=1 to n do
for i:=1 to n do
sum_po_strokam[j]:=sum_po_strokam[j]+A[i,j];
for i:=1 to n do
writeln(sum_po_strokam[j]:19:1);
writeln();
writeln(f2,'Итоги количества грузов прибыло из регионов');
write(f2,' ');
for j:=1 to n do
write(f2,Reg[j]:7,'/');
writeln();
for j:=1 to n do
write(f2,sum_po_strokam[j]:8:1);
writeln(f2);
end;
{нахождение итогов количества грузов отправленных в регионы}
Procedure Sum_stolbzov(n:byte;A:Mas);
begin
for i:=1 to n do
sum_po_stolscam[i]:=0;
for i:=1 to n do
for j:=1 to n do
sum_po_stolscam[i]:=sum_po_stolscam[i]+A[i,j];
for i:=1 to n do
writeln(sum_po_stolscam[i]:19:1);
writeln();
writeln(f2,'Итоги количества грузов отправленных в регионы ');
write(f2,' ');
for i:=1 to n do
write(f2,Reg[i]:7,'/');
writeln();
for i:=1 to n do
write(f2,sum_po_stolscam[i]:8:1);
writeln(f2);
end;
{Сумма столбцов без местного сообщения}
Procedure Sum_po_stolbcam_bez_MC(n:byte;A:mas);
Begin
for j:=1 to n do
sum_po_stolscam_bez_MC[j]:=sum_po_strokam[j]-A[j,j];
writeln('Сумма по столбцам таблицы без учета грузов, перевозимых в местном сообщении');
for i:=1 to n do
writeln(reg[j]:18, ' ',sum_po_stolscam_bez_MC[j]:8:1);
writeln();
writeln(f2,'Итоги количества грузов прибывших из регионов');
write(f2,' ');
for j:=1 to n do
write(f2,Reg[j]:7,'/');
writeln();
for j:=1 to n do
write(f2,sum_po_stolscam_bez_MC[j]:8:1);
writeln(f2);
end;
{нахождение регионов, между которыми установлена максимальная перевозка груза}
Procedure Max_perevozka(n:byte;A:mas);
begin
max:=sum_po_stolscam_bez_MC[1];
imax:=1;
for i:=1 to n do
if sum_po_stolscam_bez_MC[i]>max then
begin
max:=sum_po_stolscam_bez_MC[i];
imax:=i;
k:=imax;
end;
Writeln('в регионе',' ', Reg[imax],' установлена минимальная перевозка, которая составляет',' ', max:5:0 ,' ','тонн');
writeln(f2);
writeln(f2,'регионы, между которыми установлена минимальная перевозка груза — ',Reg[imax]);
writeln(f2);
end;
{по региону прибытия минимального груза, все размеры прибытия груза уменьшить на 10%}
Procedure Umengruz(n,k:byte; var A:mas);
begin
for i:=1 to n do
A[i,k]:=(A[i,k])*0.9;
Writeln('------------------------------------------------------------------------------');
writeln('Новый объём груза, прибывшего в регион, ',Reg[k],' будет составлять');
writeln;
end;
{главная программа}
begin
writeln(' к у р с о в а я р а б о т а в а р и а н т — 6 ');
Writeln;
Writeln('Индивидуальное задание:');
Writeln('Определить регионы(исключая местное сообщение)между которыми установлена максимальная перевозка(корреспонденция)груза ');
Writeln('По региону, прибытия данного груза, все размеры прибытия уменьшить на 10%!');
Writeln;
assign(f1,'D:\sazan.txt');
assign(f2,'D:\sazan2.txt');
{открытие файла для записи}
rewrite(f2);
name;
writeln(f2,' Курсовая работа Сазановича К.В.');
{вызов процедуры VVODзаполнения таблицы грузоперевозок в регионах РБ}
vvod(n,A);
{вызов процедуры Schitвывода таблицы грузоперевозок в регионах РБ}
writeln(' исходная таблица перевозок грузов');
writeln;
Schit(n,A);
Writeln(f2, ' исходная таблица перевозок грузов');
vivodvfile(n,A);
Writeln(f2);
Writeln('итоги по регионам прибытия грузов');
Sum_strok(n,A);
Writeln('итоги по регионам вывоза грузов');
Sum_stolbzov(n,A);
writeln('сумма количества грузов в местном сообщении по всем регионам ',diag(n,A),' тонн');
writeln(f2,' ');
writeln(f2,'сумма количества грузов в местном сообщении по всем регионам ',diag(n,a),'тонн');
{вызов процедуры Min_perevozka}
Sum_po_stolbcam_bez_MC(n,A);
Max_perevozka(n,A);
Umengruz(n,k,A);
Schit(n,A);
writeln(f2,' Таблица грузоперевозок в регионах');
writeln(f2,' (таблица после корректировки объёмов прибытия грузов в пункт — ',Reg[k],')');
vivodvfile(n,A);
Writeln('Работу выполнил Сазановича К.В.');
Writeln(f2, 'Курсовую работу выполнил Сазановича К.В.');
{закрытиефайлаf2}
close(f2); end.
1.3 Результаты решения задачи
Курсовая работа Сазановича К.В.
Исходная таблица перевозок грузов
<img border=«0» width=«467» height=«501» src=«ref-1_1783857352-89854.coolpic» v:shapes="_x0000_i1035">
Итоги количества грузов прибыло из регионов
<img border=«0» width=«483» height=«70» src=«ref-1_1783947206-13770.coolpic» v:shapes="_x0000_i1036">
Итоги количества грузов отправленных в регионы
<img border=«0» width=«488» height=«78» src=«ref-1_1783960976-16058.coolpic» v:shapes="_x0000_i1037">
сумма количества грузов в местном сообщении по всем регионам 445тонн
Итоги количества грузов прибывших из регионов
<img border=«0» width=«488» height=«73» src=«ref-1_1783977034-13951.coolpic» v:shapes="_x0000_i1038">
регионы, между которыми установлена минимальная перевозка груза — 9
<img border=«0» width=«468» height=«501» src=«ref-1_1783990985-92512.coolpic» v:shapes="_x0000_i1039">
Раздел 2. Решение задачи средствами Microsoft Excel
Исходная таблица
<img border=«0» width=«599» height=«262» src=«ref-1_1784083497-43727.coolpic» v:shapes="_x0000_i1040">
При помощи функции “СУММ(ячейка1: ячейка2)” мы высчитали суммы столбцов, суммы столбцов без местного сообщения и суммы строк. Таблица приведена ниже:
<img border=«0» width=«588» height=«319» src=«ref-1_1784127224-60077.coolpic» v:shapes="_x0000_i1041">
Таблица с формулами<img border=«0» width=«647» height=«210» src=«ref-1_1784187301-38980.coolpic» v:shapes="_x0000_i1042">
При помощи функций “ИНДЕКС”, “ПОИСКПОЗ” и “МАКС” находим следующие значения в расчетах:
<img border=«0» width=«510» height=«96» src=«ref-1_1784226281-16649.coolpic» v:shapes="_x0000_i1043">
Таблица с формулами
<img border=«0» width=«629» height=«83» src=«ref-1_1784242930-16505.coolpic» v:shapes="_x0000_i1044">
После нахождения максимального региона уменьшаем максимальный столбец на 10% и получаем таблицу:
<img border=«0» width=«592» height=«385» src=«ref-1_1784259435-77378.coolpic» v:shapes="_x0000_i1045">
Таблица в формулах
<img border=«0» width=«607» height=«206» src=«ref-1_1784336813-37509.coolpic» v:shapes="_x0000_i1046">
При построении использовались гистограммы с группировкой, отображающие количество отправленного и принятого груза в каждом регионе до и после уменьшения грузопотока в регионе с максимальным местным сообщением.
<img border=«0» width=«624» height=«295» src=«ref-1_1784374322-15028.coolpic» v:shapes=«Диаграмма_x0020_1»>
продолжение
--PAGE_BREAK--
еще рефераты
Еще работы по информатике
Реферат по информатике
Автоматизированная система диспетчерского управления Фара-0050
3 Сентября 2013
Реферат по информатике
Система управления сепаратором на промысловой компрессорной станции
18 Июня 2015
Реферат по информатике
События клавиатуры
3 Сентября 2013
Реферат по информатике
Алгоритмические языки использование множеств
3 Сентября 2013