У вас вопросы?
У нас ответы:) SamZan.net

Московский государственный технический университет радиотехники электроники и автоматики

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 29.12.2024

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

"Московский государственный технический университет радиотехники,

электроники и автоматики"

МГТУМИРЭА

Факультет  радиотехнических_и_телекоммуникацонных систем

________________________________________________________________________

Кафедра “Радиосистем передачи информации”

КУРСОВАЯ РАБОТА

по дисциплине

«_____________________Информатика____________________________»

Тема курсовой работы «__________Экология рабочей зоны__________»

                                                                   

Студент группы _____РРБ-2-12_______

Морозов М.И.

Руководитель курсовой работы

доцент, к.т.н.

Петрова Н.Я.

Работа представлена к защите

«__»_______2013 г.

(подпись студента)

«Допущен к защите»

«__»_______2013 г.

(подпись руководителя)

Москва 2013

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

"Московский государственный технический университет радиотехники,

электроники и автоматики"

МГТУМИРЭА

Факультет радиотехнических и телекоммуникационных систем

Кафедра радиосистем передачи информации

Утверждаю

Заведующий

кафедрой______________А.А.Парамонов

«____» __________2013 г.

ЗАДАНИЕ

на выполнение  курсовой работы

подисциплине «Информатика»

Студент ___________Морозов_М.И.____________________________Группа__РРБ-2-12___

  1.  Тема:____________________Экология рабочей зоны___________________________

Исходные данные:Используемая мощность предприятия (%). Изменения можно рассматривать на диапазоне 60:20:100.Время суток (1:24),ПДК (~1 вещества).

  1.  Перечень вопросов, подлежащих разработке, и обязательного графического материала:      

1. Постановка задачи (подробное описание и примеры исходных данных)      

2. Декомпозиция поставленной задачи и описание алгоритма ее поэтапного решения

3. Описание каждой подпрограммы с указанием ее входных, выходных переменных.

4. Текст программы на языке  С++.

5.  Визуализация результатов с помощью интерфейсапользователя, выполненного в Matlab.

  1.  Срок представления к защите курсовой работы:до «___» _______2013г.

Задание на курсовую

работу выдал

«___»______2013г.

  ____________________

Петрова Н.Я.

Задание на курсовую

работу получил

«___»______2013г.

__________________

Морозов М.И.

СОДЕРЖАНИЕ

Содержание 6

ФОРМУЛИРОВКА ЗАДАНИЯ…………………………………………………………………7

1.Функции С++ используемые В РЕШЕНИИ ЗАДАЧе 8

1.1 Функция main 8

1.2 Функция FREAD 9

1.3 Функция MENU 10

1.4 ФункцияDdob 12

1.5 ФункцияDvod 13

1.7 Функция FWRTE 14

1.8 Функция IzmPDK 15

ФУНКЦИЯ MATLAB, ИСПОЛЬЗУЕМАЯ В РЕШЕНИИ ЗАДАЧИ 16

ПОЛНЫЙ КОДпрограммы 17

ВЫВОД…………………………………………………………………………………….……21

Список литературы 22


 Формулировка задания.

Разработать программу анализа атмосферы рабочей зоны предприятия для выработки рекомендаций о наиболее оптимальном использовании мощностей предприятия. Предполагается, что предприятие работает круглосуточно и выпуск продукции прямо пропорционален используемым мощностям предприятия. Рекомендации по уменьшению мощностей в определенное время суток и его увеличению в другое время в соответствии с нормами ПДК на основе обработки созданной базы данных должны подтверждаться графиками зависимостей ПДК некоторых вредных веществ от времени суток и от используемых мощностей. В базе данных предусмотреть следующие поля: Используемая мощность предприятия (%). Изменения можно рассматривать на диапазоне 60:20:100.Время суток (1:24),ПДК (~1 вещества).

Функция main.

  Эта функция, запускаемая при старте программы, работает с вводом и выводом данных на экран, а так же запускает алгоритм FREAD и MENU.

int main()

{

int PDK1;

system ("cls");

setlocale (LC_ALL, "rus");

data* D= new data[24];

for (inti=0;i<24;i++)

{

 D[i].v1=-1;

}

FREAD (D,&PDK1);

MENU (D,&PDK1);

return 0;

}


Функция FREAD.

Эта функция выполняет чтение файла и заполнение массива D.

void FREAD(data D[],int* PDK1)

{

System ("cls");

int v1,h;

ifstream F("Kurs.txt");

cout<<"Чтениефайла"<<endl;

F>>*PDK1;

cout<<".";

for (inti=0;i<24;i++)

{

h=-1;

v1=-1;

F>>h;

F>>v1;

If (h!=-1)

{

 D[h].v1=v1;

}

}

cout<<endl;

F.close();

Функция MENU.

 Эта функция выполняет вывод меню на экран и запуск нужного алгоритма.

int MENU(data D[],int* PDK1)

{

int A;

while (1)

 {

system("cls");

cout<<"Выберитедействие:"<<endl<<endl;

cout<<"1.Вывестиданные."<<endl;

cout<<"2.Добавиить запись."<<endl;

cout<<"3.Изменить значения ПДК."<<endl;

cout<<"4.Выход."<<endl<<endl;

cout<<"Ваш выбор:";

 cin>>A;

switch(A)

{

 case 1:

  Dvod (D,*PDK1);

 break;

 case 2:

  Ddob (D,*PDK1)

 break;

 case 3:

  IzmPDK (D,PDK1);

 break;

 case 4:

  cout<<"Выход"<<endl;

  return 0;

 break;

}

 }

}

Функция Ddob.

Эта функция выполняет заполнение, замену и вывод концентрации вещества за отдельный час.

Void Ddob(data D[],int PDK1)

{

System ("cls");

cout<<"Добавиитьзапись"<<endl;

int nh,nv1;

cout<<"Введите час(от 0 до 23):";

cin>>nh;

cout<<"Текущее значение:"<<endl<<endl;

cout<<"Час     Кол.в-ва1"<<endl;

 if (D[nh].v1!=-1)

{

cout<<nh<<"\t"<<D[nh].v1<<"\t\t";

}

else

{

cout<<nh<<"\tНетданных"<<"\t";

}

cout<<endl<<"Введите новые значения(при вводе -1 результат - 'нет данных')"<<endl;

cout<<"Кол.в-ва 1:";

cin>>nv1;

D[nh].v1=nv1;

FWRTE (D,PDK1);

}

Функция Dvod.

Эта функция выполняет вывод на экран концентраций за каждый час, расчёт снижения мощности для исключения вредных выбросов по нормам ПДК.

Void Dvod(data D[],int PDK1)

{

System ("cls");

cout<<"Вывестиданные"<<endl;

cout<<"ПДКдляв-ва 1:"<<PDK1<<endl;

cout<<"Час     Кол.в-ва1"<<endl;

for (inti=0;i<24;i++)

{

double B,C;  

if (D[i].v1!=-1)

{

cout<<i<<"\t"<<D[i].v1<<"\t\t";

}

else

{

cout<<i<<"\tНетданных\t";

}

If (D[i].v1>PDK1)

B=100*PDK1/D[i].v1;

 If (B>60)

   {

cout<<"\tРекомендуемая мощность 60%";  

}

else

{

cout<<"\tРекомендуемая мощность 20%";

   }

   }

   }  

Функция FWRTE.

Эта функциявыполняет ввод данных в файл.

Void FWRTE(data D[],int PDK1)

{

System ("cls");

cout<<"Записьвфайл"<<endl;

ofstream Fo("Kurs.txt");

Fo<<PDK1<<"\t"<<endl;

cout<<"..";

for (inti=0;i<24;i++)

{

 if((D[i].v1!=-1)

 {

 Fo<<i<<"\t"<<D[i].v1<<"\t"<<endl;

 }

 cout<<".";

}

Fo.close();

cout<<endl;

}

 


Функция IzmPDK.

Эта функция запускает алгоритм FWRTE и выводит указания на экран.

Void IzmPDK(data D[],int* PDK1,int* PDK2)

{

System ("cls");

cout<<"ИзменениеПДК"<<endl;

cout<<"Текущее значение:"<<endl;

 cout<<"ПДК для в-ва 1:"<<*PDK1<<endl;

cout<<"Введите новые значения:"<<endl;

cout<<"Для в-ва 1: ";

cin>>*PDK1;

FWRTE (D,*PDK1);

}

 


Функция grafik.

 Эта функция, используемая в MATLAB, строит график зависимости концентрации от времени.

Function grafik

load ('C:\Users\Downloads\MATLAB R2009a Portable\Kurs.txt');

x=[];

y=[];

d=[];

for v=2:1:length(Kurs)

   y=[y,Kurs(v,2)];

end

%y

%d

holdon;

plot(x,y,'b')

plot(x,y,'r')

plot(x,y,'g')

plot(x,y,'y')

      Рис.1

  

 

ПОЛНЫЙ КОД ПРОГРАММЫ С++

#include<fstream.h> - описания и разрешения для всех буферных и потоковых классов.

#include<iostream.h> - основной фаил - библиотека, отвечает за все классы, макросы, тома и    библиотеки, которые используют программы.

#include<stdlib.h> - библиотека, который содержит в себе функции, занимающиеся выделением памяти, контроль процесса выполнения программы.


#include<fstream>

#include<iostream>

#include<stdlib.h>

using namespace std;

struct data

{

int v1;

};

int MENU(data D[],int* PDK1);

void Ddob(data D[],int PDK1);

void Dvod(data D[],int PDK1);

void FREAD(data D[],int* PDK1);

void FWRTE(data D[],int PDK1);

void IzmPDK(data D[],int* PDK1);

int main()

{

int PDK1;

system ("cls");

setlocale (LC_ALL, "rus");

data* D= new data[24];

for (inti=0;i<24;i++)

{

 D[i].v1=-1;

}

FREAD (D,&PDK1);

MENU (D,&PDK1);

return 0;

}

void FREAD (data D[],int* PDK1)

{

System ("cls");

int v1,h;

ifstream F("Kurs.txt");

cout<<"Чтениефайла"<<endl;

F>>*PDK1;

cout<<".";

for (inti=0;i<24;i++)

{

h=-1;

v1=-1;

F>>h;

F>>v1;

If (h!=-1)

{

 D[h].v1=v1;

}

}

cout<<endl;

F.close();

}

int MENU(data D[],int* PDK1)

{

int A;

while

 {

System ("cls");

cout<<"Выберитедействие:"<<endl<<endl;

cout<<"1.Вывестиданные."<<endl;

 cout<<"2.Добавиить запись."<<endl;

cout<<"3.Изменить значения ПДК."<<endl;

cout<<"4.Выход."<<endl<<endl;

cout<<"Ваш выбор:";

 cin>>A;

switch (A)

{

 case 1:

  Dvod (D,*PDK1);

 break;

 case 2:

  Ddob (D,*PDK1);

 break;

 case 3:

  IzmPDK (D,PDK1);

 break;

 case 4:

  cout<<"Выход"<<endl;

  return 0;

 break;

}

 }

}

Void Dvod (data D[],int PDK1)

{

System ("cls");

cout<<"Вывестиданные"<<endl;

cout<<"ПДКдляв-ва 1:"<<PDK1<<endl;

cout<<"Час     Кол.в-ва1"<<endl;

for (inti=0;i<24;i++)

{

double B,C;  

if(D[i].v1!=-1)

{

cout<<i<<"\t"<<D[i].v1<<"\t\t";

}

else

{

cout<<i<<"\tНетданных\t";

}

If (D[i].v1>PDK1)

{

B=100*PDK1/D[i].v1;

 If (B>60)

   {

cout<<"\tРекомендуемая мощность 60%";  

}

else

{

cout<<"\tРекомендуемая мощность 20%";

   }

   }

   }  

cout<<endl;

}

System ("pause");

}

Void Ddob(data D[],int PDK1)

{

System ("cls");

cout<<"Добавиитьзапись"<<endl;

int nh,nv1,nv2;

cout<<"Введите час(от 0 до 23):";

cin>>nh;

cout<<"Текущее значение:"<<endl<<endl;

cout<<"Час     Кол.в-ва1"<<endl;

 if(D[nh].v1!=-1)

{

cout<<nh<<"\t"<<D[nh].v1<<"\t\t";

}

else

{

cout<<nh<<"\tНетданных"<<"\t";

}

cout<<endl<<"Введите новые значения(при вводе -1 результат - 'нет данных')"<<endl;

cout<<"Кол.в-ва 1:";

cin>>nv1;

D[nh].v1=nv1;

FWRTE (D,PDK1);

}

void FWRTE (data D[],int PDK1)

{

System ("cls");

cout<<"Записьвфайл"<<endl;

ofstream Fo("Kurs.txt");

Fo<<PDK1<<"\t"<<endl;

cout<<"..";

for (inti=0;i<24;i++)

{

 If ((D[i].v1!=-1)

 {

 Fo<<i<<"\t"<<D[i].v1<<"\t"<<endl;

 }

 cout<<".";

}

Fo.close();

cout<<endl;

}

Void IzmPDK(data D[],int* PDK1,int* PDK2)

{

System ("cls");

cout<<"ИзменениеПДК"<<endl;

cout<<"Текущее значение:"<<endl;

 cout<<"ПДК для в-ва 1:"<<*PDK1<<endl;

cout<<"Введите новые значения:"<<endl;

cout<<"Для в-ва 1: ";

cin>>*PDK1;

FWRTE (D,*PDK1);

}

ВЫВОД:

исходя из проведенной мною работы, на рисунке 1 наглядно видно что при мощности 20% нормы ПДК не превышаются. При мощности в 60% завод, в соответствии с нормами ПДК, обязан работать с 22:00-4:00, с 9:00- 10:00, с 16:00-19:00. При мощности в 100% завод обязан работать с 23:00-3:00 и с17:00-18:00.

Исходя из этого работа завода для максимальной выгоды должна выглядеть следующим образом:

0:00-3:00 – 100%

3:00-4:00 – 60%

4:00-9:00 – 20%

9:00-10:00 – 60%

10:00-16:00 – 20%

16:00-17:00 – 60%

17:00-18:00 - 100%

18:00-19:00 – 60%

19:00-22:00 – 20%

22:00-23:00 – 60%

23:00-0:00 – 100%

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

СПИСОК ЛИТЕРАТУРЫ

1. Лекции и семинары – преподаватель Петрова Н.Я.

2. Интернет – руководства по созданию программ на языке С++ и Mathlab.

3. Форум программистов и сисадминов CyberForum.ru. Раздел помощи.

4. С++ для начинающих ci-plus-plus-snachala.ru




1. Восточные славяне
2. Тема- Медична апаратура.
3. Слова о полку Игореве
4. миома матки является наиболее принятым потому что даёт представление о развитии опухоли из миометрия
5. РЕФЕРАТ по международному праву на тему- ВОЗДЕЙСТВИЕ ИНТЕГРАЦИОННЫХ ПРОЦЕСС.html
6. Оценка влияния микробиологических препаратов на тлей и их энтомофага - хищную галлицу phidoletes phidimyz Rond
7. Закон его понятие и роль в демократическом государстве
8.  скорость
9. Реформы Никона и раскол Русской Православной Церкви
10. ТЕМА КАДРЫ УПРАВЛЕНИЯ
11. а-487-53-14 Суддя у І інстанції- Разумовська О
12. Социальной психологии 1 часть Составитель- кандидат психологических наук доцент Веденеева Ирина Г
13. тема Франции Судебная система Франции состоит из трех уровней судов- суд первой инстанции апелляционный су
14. Тема 9 Антикризисное финансовое управление предприятием Сущность и основные задачи антикризисного
15. Вносим изменения в декларации
16. 1 Организационноэкономическая характеристика 6 1
17. Прием и обработка сигналов.html
18. com 20140117213948194 tlnt Только рядом
19. Роль и значение ЭМ в современной технике и энергетике
20. Что же сбылось из предсказаний Нострадамуса