Разработка алгоритма слежения за расходом технических масел

Необходимость использования вычислительных технологий в технических расчетах. Особенности представления входной информации и разработки программы в среде Turbo-Pascal при необходимости учета технических масел на складе горюче-смазочных материалов.

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

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

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

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

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

Разработка алгоритма слежения за расходом технических масел

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

1.ФУНКЦИОНАЛЬНАЯ СПЕЦИФИКАЦИЯ

1.1 Входные данные

1.2 Выходная информация

1.3 Математическая постановка задачи

2 Программная спецификация

2.1 Список идентификаторов программы

2.2 Распечатка текста программы

2.3 Блок-схема

3. ЭКСПЛУАТАЦИОННЫЕ ПРОЦЕДУРЫ

3.1 Требования к техническому обеспечению

3.2 Требования к подгатовке и предоставлению данных

4. ПРОЦЕДУРЫ ТЕСТИРОВАНИЯ И СОПРОВОЖДЕНИЯ

4.1 Тестовые данные

4.2 Результаты, соответствующие тестовым данным

ЛИТЕРАТУРА

ВВЕДЕНИЕ

Деятельность отдельных людей, групп, коллективов и организаций сейчас все в большей степени начинает зависеть от их информированности и способности эффективно использовать имеющуюся информацию. Прежде чем предпринять какие-то действия, необходимо провести большую работу по сбору и переработке информации, ее осмыслению и анализу. Отыскание рациональных решений в любой сфере требует обработки больших объемов информации, что подчас невозможно без привлечения специальных технических средств.

Использование вычислительных технологий в технических расчетах позволило заметно уменьшить количество времени, затрачиваемое на эти процессы. Предположим, нам необходимо было рассчитать значение напряжения на отдельные участки предмета. Если это делать без вычислительных технологий, то необходимо сначала разработать прототип предмета, а потом проводить с ним опыты. При помощи же вычислительных технологий затраты времени, а тем более средств на эти процессы заметно сократятся, так как, например, уже можно не изготавливать прототип предмета, а используя ЭВМ провести необходимые расчеты с помощью определенных программ. Также примером преимущества может служить контроль за каким-либо процессом на некотором предприятии (например, учет инвентаря).

Также примером может послужить медицина. Сложные современные исследования в медицине немыслимы без применения вычислительной техники. К таким исследованиям можно отнести компьютерную томографию, томографию с использованием явления ядерно-магнитного резонанса, ультрасонографию, исследования с применением изотопов.

Количество информации, которое получается при таких исследованиях так огромно, что без компьютера человек был бы неспособен ее воспринять и обработать.

1.ФУНКЦИОНАЛЬНАЯ СПЕЦИФИКАЦИЯ

1.1 Входные данные

Входную информацию можно представить в виде таблицы, имеющей колонки с названиями технических масел, количество фактического и планового расхода масла для каждого станка каждого вида, количества каждого вида масла на складе ГСМ, а также цена единицы для каждого вида масла:

Название масла

Вид станка

Кол-во на складе

Цена 1 единицы

L

K

1

2

3

1

2

пл

ф

пл

ф

пл

ф

пл

ф

пл

ф

M

12

10

23

26

12

15

10

13

12

20

60

10

N

10

23

12

3

10

23

10

23

21

32

50

20

O

20

12

21

22

21

23

32

30

12

10

40

15

P

10

8

20

16

12

10

12

4

12

20

60

16

Таким образом, опираясь на принятую форму исходного документа, можно ввести следующие структуры входных данных и их идентификаторов:

программа техническое масло учет

Название масла

Вид станка

Кол-во на складе

Цена 1 единицы

name1

namei

1

2

stanok1

1

stanoki

пл

ф

пл

ф

пл

ф

пл

ф

пл

ф

mas1.name

masla111.plan

masla121.fakt

maslail1.fakt

mas1.sklad

mas1.zena

mas2.name

masla112.plan

masla122.fakt

maslail2.fakt

mas1.sklad

mas2.zena

mask.name

masla11k.plan

masla12k.fakt

maslailk.fakt

mas1.sklad

mask.zena

где: mask - массив записей (k=1,m), имеющей поля:

name - наименование масла;

sklad - количество масла хранящегося на складе ГСМ;

zena - цена 1 единицы каждого масла;

maslailk - массив записей (i=1,n;l=1,stanoki;k=1,m), имеющей поля:

plan - плановый расход масла;

fakt - фактический расход масла;

stanoki - количество станков в каждом виде (i=1,n);

namei - массив наименований видов станков (i=1,n).

1.2 Выходная информация

С учетом формы входного документа выходную информацию по поставленным в задании вопросам можно представить в виде:

Задание 1:

Станок с минимальным и максимальным расходом масла

Название масла

Вид станка

L

K

1

2

3

1

2

пл

ф

пл

ф

пл

ф

пл

ф

пл

ф

M

12

10

23

26

12

15

10

13

12

20

N

10

23

12

3

10

23

10

23

21

32

O

20

12

21

22

21

23

32

30

12

10

P

10

8

20

16

12

10

12

4

12

20

min=1 станок вида L

max=2 станок вида К

Задание 2:

Масла в избытке или в недостатке на складе ГСМ

Название масла

Вид станка

Кол-во на складе

Избыток или недостаток

L

K

1

2

3

1

2

пл

ф

пл

ф

пл

ф

пл

ф

пл

ф

M

12

10

23

26

12

15

10

13

12

20

60

избыток

N

10

23

12

3

10

23

10

23

21

32

50

избыток

O

20

12

21

22

21

23

32

30

12

10

40

избыток

P

10

8

20

16

12

10

12

4

12

20

60

недостаток

Задание 3:

Список станков в порядке уменьшения стоимости расхода масел для каждого вида оборудования

Вид L

Станок

Расходы

3

1115

2

906

1

868

Вид К

Станок

Расходы

2

1310

1

1104

Опираясь на формы приведенных выходных документов, для получения этой информации можно ввести следующие идентификаторы:

minj,maxj - массивы, в которых хранятся данные по максимальному и минимальному расходу масла, где при:

j=1 - значение расхода масла;

j=2 - вид станка;

j=3 - номер станка в виде;

rashod - общий расход масла;

stoimostt - расходы для каждого станка в виде (t=1,stanoki; stanoki - количество станков в виде i).

1.3 Математическая постановка задачи

Математически определим последовательность действий:

1 задание: найти для каждого станка сумму использованных масел summa, а затем найти минимальный и максимальный элементы:

for i:=1 to n do

for l:=1 to stanok[i] do

begin

for k:=1 to m do

summa[l]:=summa[l]+masla[i,l,k].fakt;

if summa[l]>max[1] then

begin

max[1]:=summa[l];

max[2]:=i;

max[3]:=l;

end;

if (summa[l]<min[1]) or (l=1) then

begin

min[1]:=summa[l];

min[2]:=i;

min[3]:=l;

end;

summa[l]:=0;

end;

2 задание: для каждого вида масла найти разность суммы количества затрачиваемого масла на каждый станок и количества хранящегося на складе ГСМ:

for k:=1 to m do

begin

for i:=1 to n do

for l:=1 to stanok[i] do

rashod:=rashod+masla[i,l,k].fakt;

if rashod<mas[k].sklad then writeln(mas[k].name, ' находится на складе в избытке');

if rashod>mas[k].sklad then writeln(mas[k].name, ' нехватает на складе');

3 задание: произвести сортировку в массиве расходов (stoimostil).

for i:=1 to n do

for l:=1 to stanok[i] do

for l1:=1 to stanok[i] do

if stoimost[i,l]<stoimost[i,l1] then

begin

a:=stoimost[i,l];

stoimost[i,l]:=stoimost[i,l1];

stoimost[i,l1]:=a;

b:=index[l1];

index[l1]:=index[l];

index[l]:=b;

end;

2. Программная спецификация

2.1 Список идентификаторов программы

Используемые переменные:

rashod - переменная в которой сохраняется значение расходов для текущего станка;

stoimostil - - расходы для каждого станка в виде (t=1,stanoki; stanoki - количество станков в виде i).

maxj,minj - массивы, в которых хранятся данные по максимальному и минимальному расходу масла, где при:

j=1 - значение расхода масла;

j=2 - вид станка;

j=3 - номер станка в виде;

namei - массив наименований видов станков (i=1,n);

stanoki - количество станков в каждом виде (i=1,n);

mask - массив записей (k=1,m), имеющей поля:

name - наименование масла;

sklad - количество масла хранящегося на складе ГСМ;

zena - цена 1 единицы каждого масла;

maslailk - массив записей (i=1,n;l=1,stanoki;k=1,m), имеющей поля:

plan - плановый расход масла;

fakt - фактический расход масла.

2.2 Распечатка текста программы.

type

mr=record

fakt,plan:real;

end;

masl=record

name:string;

zena:real;

sklad:real;

end;

var

n,m,i,l,l1,k,b:integer;

rashod,a:real;

stoimost:array[1..10,1..10] of real;

summa:array[1..10] of real;

max,min:array[1..3] of real;

name:array[1..10] of string;

stanok,index:array[1..10] of integer;

mas:array[1..10] of masl;

masla:array[1..10,1..10,1..10] of mr;

begin

rashod:=0;max[1]:=0;

write('Введите кол-во видов станков n=');

readln(n);

write('Введите кол-во марок технических масел m=');

readln(m);

writeln('Название видов станков');

for i:=1 to n do

begin

write('Вид ',i,' - ');

readln(name[i]);

end;

writeln('Ввод кол-вa станков по каждому виду');

for i:=1 to n do

begin

write(name[i],'= ');

readln(stanok[i]);

end;

writeln('Ввод названий масел');

for k:=1 to m do

begin

write(k,' - ');

readln(mas[k].name);

end;

writeln('Ввод расхода масел по стакнкам');

for i:=1 to n do

begin

writeln('Ввод по ',name[i],':');

for l:=1 to stanok[i] do

begin

writeln(l,' станок');

index[l]:=l;

summa[l]:=0;

for k:=1 to m do

begin

writeln('Масло - ',mas[k].name);

write(#9,'плановый расход:');

readln(masla[i,l,k].plan);

write(#9,'фактический расход:');

readln(masla[i,l,k].fakt);

end;

end;

writeln;

end;

writeln('Ввод кол-во на складе ГСМ');

for k:=1 to m do

begin

write(mas[k].name,' : ');

readln(mas[k].sklad);

end;

writeln('Ввод стоимость единицы масла');

for k:=1 to m do

begin

write(mas[k].name,' : ');

readln(mas[k].zena);

end;

{ЗАДАНИЕ1}

for i:=1 to n do

for l:=1 to stanok[i] do

begin

for k:=1 to m do

summa[l]:=summa[l]+masla[i,l,k].fakt;

if summa[l]>max[1] then

begin

max[1]:=summa[l];

max[2]:=i;

max[3]:=l;

end;

if (summa[l]<min[1]) or (l=1) then

begin

min[1]:=summa[l];

min[2]:=i;

min[3]:=l;

end;

summa[l]:=0;

end;

writeln(max[3]:4:0,' станок ',name[round(max[2])],' потребляет больше всего масел ',max[1]:8:6);

writeln(min[3]:4:0,' станок ',name[round(min[2])],' потребляет меньше всего масел ',min[1]:8:6);

readln;

{ЗАДАНИЕ2}

writeln('Вид масла и его избыток или недостаток');

for k:=1 to m do

begin

for i:=1 to n do

for l:=1 to stanok[i] do

rashod:=rashod+masla[i,l,k].fakt;

if rashod<mas[k].sklad then writeln(mas[k].name, ' находится на складе в избытке');

if rashod>mas[k].sklad then writeln(mas[k].name, ' нехватает на складе');

rashod:=0;

end;

readln;

{ЗАДАНИЕ 3}

writeln('Список станков в порядке уменьшения стоимости расхода масел');

for i:=1 to n do

begin

writeln('По ',name[i],':');

writeln('Станок',#9,'цена');

for l:=1 to stanok[i] do

for k:=1 to m do

stoimost[i,l]:=stoimost[i,l]+masla[i,l,k].fakt*mas[k].zena;

for l:=1 to stanok[i] do

for l1:=1 to stanok[i] do

if stoimost[i,l]<stoimost[i,l1] then

begin

a:=stoimost[i,l];

stoimost[i,l]:=stoimost[i,l1];

stoimost[i,l1]:=a;

b:=index[l1];

index[l1]:=index[l];

index[l]:=b;

end;

for l:=1 to stanok[i] do

writeln(index[l],#9,stoimost[i,l]:8:6);

writeln;

end;

readln;

end.

2.3 Блок-схема

3. ЭКСПЛУАТАЦИОННЫЕ ПРОЦЕДУРЫ

3.1 Требования к техническому обеспечению

Программа была создана на ЭВМ со следующими характеристиками:

операционная система: Windows XP;

тип и частота процессора: AMD Sempron 3300;

объем оперативной памяти: 1536Mb.

3.2 Требования к подгатовке и предоставлению данных

· количество видов станков: любое натуральное число;

· количество марок технических масел: любое натуральное число;

· количество станков каждого вида: любое натуральное число;

· плановые и фактические расходы: любое целое положительное число;

· количество масла каждой марки на складе ГСМ: любое положительное число;

· стоимость единицы по всем маркам: любое положительное вещественное число.

4. ПРОЦЕДУРЫ ТЕСТИРОВАНИЯ И СОПРОВОЖДЕНИЯ

4.1 Тестовые данные

Данные предоставлены для n=2 видов станков, m=2 видов масел, в каждом виде станков - 2 станка.

Название масла

Вид станка

Кол-во на складе

Цена 1 единицы

L

K

1

2

1

2

пл

ф

пл

ф

пл

ф

пл

ф

M

22

25

23

21

10

13

15

15

70

10

N

10

13

12

13

10

23

21

32

81

15

4.2 Результаты, соответствующие тестовым данным

Станок с минимальным и максимальным расходом масла

Название масла

Вид станка

L

K

1

2

1

2

пл

ф

пл

ф

пл

ф

пл

ф

M

22

25

23

21

10

13

15

15

N

10

13

12

13

10

23

21

32

min=1 станок вида L

max=2 станок вида К

Масла в избытке или в недостатке на складе ГСМ

Название масла

Вид станка

Кол-во на складе

Избыток или недостаток

L

K

1

2

1

2

пл

ф

пл

ф

пл

ф

пл

ф

M

22

25

23

21

15

15

70

22

25

недостаток

N

10

13

12

13

21

32

81

10

13

--------------

Список станков в порядке уменьшения стоимости расхода масел для каждого вида оборудования

Вид L

Станок

Расходы

1

445

2

405

Вид К

Станок

Расходы

2

630

1

475

ЛИТЕРАТУРА

1. Фаронов В.В. Турбо Паскаль 7.0. Начальный курс.Учебное пособие. -М.: “Нолидж” , 1998. -616 с.

2. Вычислительная техника и программирование. Под редакцией А.В. Петрова М, Высшая школа, 1990

3. Марченко А.И., Марченко Л.И. Программирование в среде Turbo-Pascal 7.0-М., Бином Универсал, К.: Юниор, 1997

4. Фаронов В.В. Турбо Паскаль (в 3-х книгах). Кн. 3. Практика программирования. Часть 2. - М.: Учебно-инженерный центр “МВТУ - ФЕСТО ДИДАКТИК”, 1993. - 304 с., ил.

5. Зубарева Н.М., Баринова Т.Н. Программирование и алгоритмизация: Учебное пособие по самостоятельному выполнению контрольных работ и курсового проектирования для студентов специальностей 210200 заочной формы обучения, 251100, 251200, 250400, 250600, 320700 очной формы обучения. Красноярск: СибГТУ, 2002. - 56с.

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


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

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

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

  • Особенности поиска среднеарифметического значения элементов массива. Общая характеристика проблем разработки в среде Turbo Pascal программы упорядочивания массива по возрастанию. Рассмотрение основных этапов разработки программы на языке PASCAL.

    курсовая работа [896,7 K], добавлен 18.05.2014

  • Описание алгоритма решения задачи по вычислению суммы элементов строк матрицы с использованием графического способа. Детализация укрупненной схемы алгоритма и разработка программы для решения задачи в среде Turbo Pascal. Листинг и тестирование программы.

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

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

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

  • Разработка эскизного и технического проектов программы "Helpopr" (ввод, хранение и вывод данных на дисплей по запросу пользователя). Язык программирования Turbo Pascal. Описание алгоритма программы. Требования к компьютеру и программному обеспечению.

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

  • GetMatrDop как процедура определяет значение элемента транспонированной матрицы дополнений. Знакомство с этапами разработки в среде Turbo Pascal программы сортировки элементов, находящихся на главной диагонали матрицы. Особенности тестирования программы.

    курсовая работа [780,4 K], добавлен 20.11.2014

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

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

  • Основы работы на языке высокого уровня Turbo Pascal. Основное оборудование и программное обеспечение. Операторы, необходимы для работы в графической среде Turbo Pascal. Запуск графического режима. Текст программы в графической среде Turbo Pascal.

    лабораторная работа [12,7 K], добавлен 14.05.2011

  • Общая характеристика технических средств информационных технологий. Жизненный цикл технических информационных технологий, его основные этапы и отличительные особенности. Определение необходимости технической поддержки определенного вида деятельности.

    реферат [21,1 K], добавлен 05.11.2010

  • Решения задачи графическим и программным способами. Описание алгоритма решения графическим способом, укрупненная схема алгоритма. Ввод элементов двумерного массива, вывод преобразованного массива, разработка программы на языке pascal, листинг программы.

    курсовая работа [115,5 K], добавлен 22.05.2010

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