Программа обработки ведомости о времени выполнения задания на ЭВМ - Программирование, компьютеры и кибернетика курсовая работа

Программа обработки ведомости о времени выполнения задания на ЭВМ - Программирование, компьютеры и кибернетика курсовая работа




































Главная

Программирование, компьютеры и кибернетика
Программа обработки ведомости о времени выполнения задания на ЭВМ

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


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

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


Развитие компьютерных технологий позволяет применить их во всех областях деятельности человека. Очень часто программирование и компьютерные технологии применяются для обработки экономической информации. В настоящее время просто немыслимо работа любого предприятия без применения компьютерных технологий и программирования. Тысячи программистов работают над тем, чтобы облегчить деятельность предприятий в любых сферах деятельности. Только с использованием компьютеров и соответствующих программ современное предприятие может плодотворно работать и приносить прибыль. Эта работа будет примером программного продукта, который должен быть использован в экономических целях.
В данном документе описывается программа, написанная в соответствии с постановкой задачи на курсовое проектирование по теме "Программа обработки ведомости о времени выполнения задания на ЭВМ " по дисциплине "Основы программирования и алгоритмические языки". Для проверки работы программы разработан тестовый пример. Результат примера показывает, что программа работает корректно и правильно. Программа написана на языке Си++ производства фирмы Borland версии 3.1 под операционную систему MS-DOS.
Программа предназначена для вычисления процента процессорного времени по каждому заданию, а также суммы по видам времени по всем заданиям и расчета среднего процента времени центрального процессора по всем заданиям.
Требуется написать программу обработки экономической информации, осуществляющую ввод исходной информации из файла, необходимую её организацию, обработку в соответствии с вариантом задания №6 методических указаний. Выводимую информацию оформить в виде таблицы со всеми необходимыми полями записей и результатов расчетов.
Даны сведения о времени выполнения заданий (5 символов) на ЭВМ (время из-меряется в секундах с точностью до тысячных долей). Структура записи: шифр задания (8 символов), код отдела (3 символа), Ф.И.О. программиста (15 символов), общее время прохождения задания, время центрального процессора -5 знаков (t_ задания>t_цп). Получить процент процессорного времени по каждому заданию, а также суммы по видам времени по всем заданиям и средний процент времени центрального процессора по всем заданиям. Интерфейсная часть программы должна быть в виде меню:
6 Обработка информации (вычисление)
Программа должна быть реализована на языке программирования высокого уровня. В основе программы лежат двунаправленные списки. Выходные данные выводятся на экран в виде таблицы, в которой могут находятся упорядоченные по какому-либо (на выбор пользователя) полю.
Программа также сохраняет выходную таблицу в файле на жестком диске. Также возможно редактирование введенных данных. Программа не имеет модулей и прилагаемых файлов и состоит из одного рабочего файла. Файлы с исходными и сохраненными выходными данными имеют расширение txt.
Предполагается, что таблица входных данных не содержится в текстовом файле местонахождение, которого пользователь вводит по запросу программы. Под каждое поле отведено фиксированное количество символов:
Входной файл должен заканчиваться символом «конец файла» (EOF)
Количество записей в файле ограничено только доступной оперативной памятью, все записи объединены в таблицу, нарисованную символами псевдографики. Также в программе существует возможность создание таблицы и сохранения её.
Выходные данные представляют собой таблицу (пример таблица 2.3.1)
2.4 Внутреннее Представление Данных
Для написания данной программы был выбран язык Си++ и компилятор Borland С++ версии 3.1 для ДОС.
Язык Си обладает большим количеством функций, что ускоряет процесс написания программы и уменьшает объем текста программы. Язык Си очень гибок, широко распространен, отличается маленьким объемом исполняемого файла и большой скорости выполнения. Построение таблиц, требуемых по заданию, могут включать в себя неизвестное заранее количество элементов, поэтому для хранения входной информации статические переменные неприемлемы. В компиляторе фирмы Borland имеются динамические массивы, размер которых изменяется в процессе работы программы. Однако большее удобство представляют собой двунаправленный список так как только в нем возможны: перестановка порядка следования элементов без копирования самой структуры; поиск как в прямом, так и обратном направлении; вставка и удаление элементов наиболее оптимальным образом.
Следующая структура используется для хранения записей входного файла:
char io[5]; //инициалы имени и отчества
float srcpu; //средний %-т времени CPU
float allltime;//сумма общего времени
struct element *left;//указатель па предыдущую //строку
struct element *right;//указатель па следущую
Программа состоит из 18 функций. Каждая функция вызывается из главной программы с помощью меню, каждый пункт которого вызывает отдельную функцию.
Программа состоит из следующих функций:
Функция org(int q) организовывает работу всей программы с помощью
Функция readfile предназначена для чтения данных из файла. С помощью цикла функция считывает из входного файла слова от пробела до пробела.
Функция view выводит на экран данные в виде таблицы, при этом можно использовать прокрутку текста с помощью клавиш ,стрелок вверх и вниз.
Функция find_int(int a) ищет в списке поля, содержащие числовые данные.
Функция find_ср(int a) ищет в списке поля, содержащие литерные данные(слова).
Функция look(int a) обеспечивает вывод результатов поиска на экран.
Функции work1(int a) и work2(int a) выполняют необходимые вычисления.
Функция dob() добавляет строку в конец списка.
Функция remove() удаляет из списка строку, по выбору оператора .
Функции RW_int(int a) и RW_ch(int a) редактируют таблицу данных (изменение полей таблицы).
Функция sortir(int a) выполняет сортировки по любому полю таблицы.
Функция writeHDD() записывает отредактированную таблицу на диск.
Функции orgsortir(), orgfind() и orgRW() обеспечивают управление функциями sortir(int a), find_int(int_a) и find_ch(int a), RW_int(int a) и RW_ch(int a), соответственно, через меню.
Структурные схемы алгоритма программы и подпрограмм приведены на рисунках 5.2.1 - 5.2.7:
А) Функция чтения данных из файла (рис. 2.5.1)


Б) Функция организации работы программы (рис. 2.5.2 рис. 2.5.3)


В) Функция просмотра данных (рис. 2.5.4)


Г) Функция удаления строки из списка (рис. 2.5.5 )


Д) Функция добавления строки в список (рис. 2.5.6 )


E) Функция редактирования строки в списке (рис. 2.5.7)
программа строка таблица информация


E) Функция вычислений процента времени центрального процессора от общего времени выполнения задания на ЭВМ (рис. 2.5.8)


3 . ТЕХНИКО-ЭКОНОМИЧЕСКИЕ ПОКАЗАТЕЛИ
В результате компиляции программы компилятором Borland C++ 3.1 был получен исполняемый файл формата DOS EXE размером 76,2 Кбайт, что является более чем приемлемым.
Для работы программа требует приблизительно 100 Кбайт оперативной памяти (зависит от количества загруженных записей). Данный объем позволяет программе выполнятся на самом широком круге компьютеров, фактических всех поддерживающих операционную систему DOS.
Для выполнения требуется процессор класса 80x86, цветной монитор, поддерживающий текстовый режим 80х25.
Размер входного файла зависит от количества записей в нем и для 30 записей составляет 6Кбайта. Размер выходного файла - 608 байта.
Программа может работать под управлением операционной системы класса DOS, при этом сохраняет работоспособность и в режиме эмуляции MS-DOS операционной системой Windows9X.
Таким образом программа может выполняться практически на любом доступном PC компьютере.
Рекомендации по улучшению программы.
Программа работает правильно и корректно. Недостатком является, по сегодняшним временам интерфейс. По улучшению интерфейса программы рекомендуется перевести исходный текст на язык программирования высокого уровня, на базе С++ под ОС Windows. Конкретнее говоря, программу рекомендовано перевести на язык программирования C++ Builder Практически не изменяя текста программы можно добиться более удобного интерфейса и скорости работы пользователя с программой.
Для нормальной работы программы необходима следующая аппаратная база:
Совместимый IBM-PC компьютер на базе процессора Intel 80286, 640Кб оперативной памяти, накопитель жестких или гибких магнитных дисков объемом не менее 10 Мб, CGA VGA, SVGA видеоадаптеры. Программа предназначена для работы в среде операционной системы MS-DOS . Также работоспособность программы сохранится при использовании ее под линии Windows 9х. Все вышеперечисленные требования являются оптимальными. Программный продукт разрабатывался и тестировался на компьютере следующей модификации:
Входные данные принимаются программой cчитыванием из файла, определенного формата. Предназначено для обработки большого количества данных.
Формат входных данных имеет следующий вид:
Время центрального процессора float
00123-as 100 Глушко Е.Н. 45.29 34.56
Выходные данные тоже могут быть представлены в двух видах:
2) таблица данных находится на накопителе информации в виде фай-ла. Формат данных не меняется.
Таблица имеет 10 разделов последние 4 являются расчетным.
Данный программный продукт может быть использован в любом экономическом отделе, не обязательно института, для помощи в вычислительных вопросах учреждения. С ее помощью, зная общее время выполнения задания и время центрального процессора, можно вычислить процент времени центрального процессора ,средний процент этого времени, а также сумму процессорного и сумму общего времени. Такая программа значительно облегчит данные вычисления. Программный продукт был написан на языке высокого уровня Borland C++.
char io[5]; //инициалы имени и отчества
float srcpu; //средний %-т времени CPU
float allltime;//сумма общего времени
float rezall=0,rezcpu=0;//Cумма общего времени и времени CPU
//*************************ЧТЕНИЕ ДАННЫХ ИЗ ФАЙЛА
gotoxy(16,7);cout<<"Введите путь к файлу исходнах данных"<<"\n";
if( (in=fopen( put, "r"))==NULL)//открытие файла
gotoxy(25,11);cout<<"Файл не найден...";
gotoxy(29,20);cout<<"Esc:выход"<<"\n";
gotoxy(28,22);cout<<"Enter:заново"<<"\n";
p=(struct element *) malloc( sizeof(struct element));//выделение памяти
fscanf(in, "%s%i%s%s%f%f", &p->data.shifr, &p->data.code, &p->data.f,
&p->data.io, &p->data.alltime,&p->data.cputime);//считываем строку
begin=end=p;//указатели начала и конца списка
p->left=NULL;//указатель на предыдущую строку
p->right=NULL;//указатель на следущую строку
temp->data.prcpu=0; //обнуление полей
p=(struct element *) malloc( sizeof(struct element) );//выделение памяти
fscanf(in, "%s%i%s%s%f%f", &p->data.shifr,&p->data.code,&p->data.f,
&p->data.io, &p->data.alltime, &p->data.cputime);//считываем строку
temp->right=p;//следующему temp присваиваем считанный элемент
p->left=temp;//предедующему p присваиваем temp
p->right=NULL;//указатель на следущую строку
temp->data.N=++i;//увеличиваем номер строки
//*************************ПРОСМОТР ИСХОДНЫХ ДАННЫХ
gotoxy(1,1);cout<<"г===T====1===T=2=T=======3=======T==4===T==5===TT==6==T========T========T=====¬\n";
gotoxy(1,2);cout<<"¦ N ¦ Шифр ¦Код¦ ФИО ¦Общее ¦Время ¦¦ % ¦Cумма по¦Сумма по¦Средн¦\n";
gotoxy(1,3);cout<<"¦ ¦ задания¦отд¦ ¦время ¦ CPU ¦¦ CPU ¦6му полю¦5му полю¦%по6у¦\n";
gotoxy(1,4);cout<<"¦===+========+===+===============+======+======++=====+========+========+=====¦\n";
gotoxy(1,a+1);cout<<"L===¦========¦===¦===============¦======¦======¦¦=====¦========¦========¦=====-";
for(j=5;j<=a;j++)//выводим первые 10 строк
printf("¦%2i.¦%8s¦%3i¦%10s %4s¦%6.3f¦%6.3f¦¦%5.2f¦%8.2f¦%8.2f¦%5.2f¦\n",temp->data.N,temp->data.shifr,temp->data.code,
temp->data.f,temp->data.io,temp->data.alltime,temp->data.cputime,temp->data.prcpu,temp->data.allltime,temp->data.allcpu,temp->data.srcpu);
case 72:if(t->left!=NULL) t=t->left;break;//передвигаем на одну строку вниз
case 80:if(temp!=NULL) t=t->right;break;//передвигаем на одну строку вверх
temp=t;//начало просмотра очередных 10 строк
//*************************ПРОЦЕНТ ВРЕМЕНИ CPU ОТ ОБЩЕГО ВРЕМЕНИ ВЫПОЛНЕНИЯ
int pusk1;//cчетчик кол-ва выполнений вычислений
float temprez=0;//сумма весго % времени CPU
temp->data.prcpu=((temp->data.cputime)*100)/(temp->data.alltime);//% времени CPU
temprez=temprez+temp->data.prcpu;//сумма % времени cpu
temp->data.srcpu=temprez/i;//средний % времени CPU
cout<<"\n"<<"Вычисление завершено...";
//*************************СУММА ПО ВИДАМ ВРЕМЕНИ
int pusk2;//cчетчик кол-ва выполнений вычислений
cout<<"\n"<<"Новые данные занесены... ";
else cout<<"\n"<<"Вычисление завершено...";
case 2:if(buf->data.code>dat.code) node=1;
case 4:if(buf->data.alltime>dat.alltime) node=1;
case 5:if(buf->data.cputime>dat.cputime) node=1;
case 6:if(buf->data.prcpu>dat.prcpu) node=1;
case 7:if(buf->data.N>dat.N) node=1;
//*************************ПРОСМОТР ПОИСКА
cout<<"г===T====1===T=2=T=======3=======T==4===T==5===TT==6==T========T========T=====¬\n";
cout<<"¦ N ¦ Шифр ¦Код¦ ФИО ¦Общее ¦Время ¦¦ % ¦Cумма по¦Сумма по¦Средн¦\n";
cout<<"¦ ¦ задания¦отд¦ ¦время ¦ CPU ¦¦ CPU ¦6му полю¦5му полю¦%по6у¦\n";
cout<<"¦===+========+===+===============+======+======++=====+========+========+=====¦\n";
suda: printf("¦%2i.¦%8s¦%3i¦%10s %4s¦%6.3f¦%6.3f¦¦%5.2f¦%8.2f¦%8.2f¦%5.2f¦\n",temp->data.N,
temp->data.shifr,temp->data.code,temp->data.f,temp->data.io,temp->data.alltime,
temp->data.cputime,temp->data.prcpu,temp->data.allltime,temp->data.allcpu,temp->data.srcpu);
//*************************ПОИСК ПО СТРОКОВЫМ ПОЛЯМ
case 3:if(strcmp(el,temp->data.f)==0) {j++;look(j);}break;
case 1:if(strcmp(el,temp->data.shifr)==0) {j++;look(j);}break;
case 0:if(strcmp(el,temp->data.io)==0) {j++;look(j);}break;
if(j==0) cout<<"\n"<<"Введенное поле отсутствует"<<"\n";
else cout<<"L===¦=====¦===¦=======¦======¦======¦¦=====¦=====¦=====¦==-";
cout<<"\n"<<"Новый поиск (Y-да,N-нет) ";
//*************************ПОИСК ПО ЧИСЛОВЫМ ПОЛЯМ
case 2:if(el==temp->data.code) {j++;look(j);}break;
case 4:if(el2==temp->data.alltime) {j++;look(j);}break;
case 5:if(el2==temp->data.cputime) {j++;look(j);}break;
case 6:x=div(temp->data.prcpu,100); if(el2==x.rem) {j++;look(j);}break;
if(j==0) cout<<"\n"<<"Введенное поле отсутствует"<<"\n";
else cout<<"L===¦=====¦===¦=======¦======¦======¦¦=====¦====¦=====¦===-";
cout<<"\n"<<"Новый поиск (Y-да,N-нет) ";
//*************************ДОБАВЛЕНИЕ СТРОКИ
p=(struct element *) malloc( sizeof(struct element) );//выделение памяти
cout<<"Введете элементы через enter"<<"\n";
cout<<"г====1===T=2=T=======3=======T==4===T==5===¬\n";
cout<<"¦ Шифр ¦Код¦ ФИО ¦Общее ¦Время ¦\n";
cout<<"¦ задания¦отд¦ ¦время ¦ CPU ¦\n";
cout<<"¦========+===+==========T====+======+======¦\n";
gotoxy(1,7);cout<<"¦ ¦ ¦ ¦ ¦ ¦"<<"\n";
gotoxy(1,8);cout<<"L========¦===¦======¦====¦======¦===-"<<"\n";
gotoxy(2,7);scanf("%s", &p->data.shifr);
gotoxy(11,7);scanf("%i", &p->data.code);
gotoxy(15,7);scanf("%s", &p->data.f);
gotoxy(26,7);scanf("%s", &p->data.io);
gotoxy(31,7);scanf("%f", &p->data.alltime);
gotoxy(38,7);scanf("%f", &p->data.cputime);
if(pusk1+pusk2==3) //проверка на выполнение вычислений
//*************************УДАЛЕНИЕ СТРОКИ
cout<<"Введите номер удаляемой строки: ";
cout<<"г===T====1===T=2=T===3====T==4===T==5===TT==6==T======T======T=====¬\n";
cout<<"¦ N ¦ Шифр ¦Код¦ ФИО ¦Общее ¦Время ¦¦ % ¦Cумма по¦Сумма по¦Средн¦\n";
cout<<"¦ ¦ задания¦отд¦ ¦время ¦ CPU ¦¦ CPU ¦6му полю¦5му полю¦%по6у¦\n";
cout<<"¦===+========+===+===============+======+======++=====+========+========+=====¦\n";
printf("¦%2i.¦%8s¦%3i¦%10s %4s¦%6.3f¦%6.3f¦¦%5.2f¦%8.2f¦%8.2f¦%5.2f¦\n",temp->data.N,
temp->data.shifr,temp->data.code,temp->data.f,temp->data.io,temp->data.alltime,
temp->data.cputime,temp->data.prcpu,temp->data.allltime,temp->data.allcpu,temp->data.srcpu);
cout<<"L===¦========¦===¦===============¦======¦======¦¦=====¦========¦========¦=====-";
cout<<"\n"<<"Удалить данную строку?(да:y,нет:n)";
clrscr();gotoxy(1,23);cout<<"\n"<<"Удаление завершено...";
if(pusk1+pusk2==3)//проверка на выполнение вычислений
//*************************РЕДАКТИРОВАНИЕ
cout<<"г===T====1===T=2=T=======3=======T==4===T==5===TT==6==T========T========T=====¬\n";
cout<<"¦ N ¦ Шифр ¦Код¦ ФИО ¦Общее ¦Время ¦¦ % ¦Cумма по¦Сумма по¦Средн¦\n";
cout<<"¦ ¦ задания¦отд¦ ¦время ¦ CPU ¦¦ CPU ¦6му полю¦5му полю¦%по6у¦\n";
cout<<"¦===+========+===+===============+======+======++=====+========+========+=====¦\n";
printf("¦%2i.¦%8s¦%3i¦%10s %4s¦%6.3f¦%6.3f¦¦%5.2f¦%8.2f¦%8.2f¦%5.2f¦\n",temp->data.N,
temp->data.shifr,temp->data.code,temp->data.f,temp->data.io,temp->data.alltime,
temp->data.cputime,temp->data.prcpu,temp->data.allltime,temp->data.allcpu,temp->data.srcpu);
cout<<"L===¦========¦===¦===============¦======¦======¦¦=====¦========¦========¦=====-";
case 0:cout<<"\n"<<"Заменить "<data.N,
temp->data.shifr,temp->data.code,temp->data.f,temp->data.io,temp->data.alltime,
temp->data.cputime,temp->data.prcpu,temp->data.allltime,temp->data.allcpu,temp->data.srcpu);
cout<<"L===¦========¦===¦===============¦======¦======¦¦=====¦========¦========¦=====-\n";
cout<<"\n"<<"Введите заменяемый элемент(не более 10 символов) ";
switch(a)//выбор,редактируемого поля
case 0:if(strcmp(ell5,temp->data.io)==0) change(a);break;
case 1:if(strcmp(ell5,temp->data.shifr)==0) change(a);break;
case 3:if(strcmp(ell5,temp->data.f)==0) change(a);break;
if(jj!=0) break;//проверка:найден ли заменяемый елемент
cout<<"\n"<<"введенный елемент отсутствует"<<"\n";
cout<<"Продолжить редоктирование?(да:y,нет:n)";
//редактирование по числовым данным
cout<<"\n"<<"Введите заменяемый элемент: ";
switch(a)//выбор,редактируемого поля
case 2:if(ell==temp->data.code) change(a);break;
case 4:if(ell3==temp->data.alltime) change(a);break;
case 5:if(ell3==temp->data.cputime) change(a);break;
if(jj!=0) break;//проверка:найден ли заменяемый елемент
cout<<"\n"<<"введенный елемент отсутствует"<<"\n";
cout<<"Продолжить редоктирование?(да:y,нет:n)";
{ cout<<"\n"<<"Сохранить изменения?(да:y,нет:n)";
case 4:temp->data.alltime=ell3;break;
case 5:temp->data.cputime=ell3;break;
else if(ch=='y') cout<<"\n"<<"Изменения приняты...";
case 0:if(strcmp(buf->data.io,dat.io)>0) node=1;
case 1:if(strcmp(buf->data.shifr,dat.shifr)>0) node=1;
case 3:if(strcmp(buf->data.f,dat.f)>0) node=1;
out=fopen("a:\выход.txt","w");//открытие файла для записи
fprintf(out,"г===T====1===T=2=T=======3=======T==4===T==5===TT==6==T========T========T=====¬\n");
fprintf(out,"¦ N ¦ Шифр ¦Код¦ ФИО ¦Общее ¦Время ¦¦ % ¦Cумма по¦Сумма по¦Средн¦\n");
fprintf(out,"¦ ¦ задания¦отд¦ ¦время ¦ CPU ¦¦ CPU ¦6му полю¦5му полю¦%по6у¦\n");
fprintf(out,"¦===+========+===+===============+======+======++=====+========+========+=====¦\n");
fprintf(out,"¦%2i.¦%8s¦%3i¦%10s %4s¦%6.3f¦%6.3f¦¦%5.2f¦%8.2f¦%8.2f¦%5.2f¦\n",j,
temp->data.shifr,temp->data.code,temp->data.f,temp->data.io,temp->data.alltime,
temp->data.cputime,temp->data.prcpu,temp->data.allltime,temp->data.allcpu,temp->data.srcpu);
fprintf(out,"L===¦========¦===¦===============¦======¦======¦¦=====¦========¦========¦=====-");
//-----------------------------=== PROGRAM ===--------------------------------
const string menu[10] = {"1:Просмотр исходных данных ","2:Сортировка",
"3:Процент времени CPU от общего времени выполнения",
"3:Cумма общего времени и времени CPU","5:Поиск","6:Редактирование","7:Добавление",
"8:Удаление","9:Запись","10:Выход"};
const string menufind[8]={"1:Поиск по шифру","2:Поиск по коду","3:Поиск по фамилии",
"4:Поиск по инициалам имени и отчества","5:Поиск по общему времени",
"6:Поиск по времени CPU","7:Поиск по проценту времени CPU","назад"};
const string menusortir[9]={"1:По номеру","2:По шифру","3:По коду","4:По фамилии",
"0:По инициалам имени и отчества","4:По общему времени","5:По времени CPU",
"5:По процентам времени CPU","назад"};
const string menuRW[7]={"1:По шифру","2:По коду","3:По фамилии",
"4:По инициалам имени и отчества","5:По общему времени","6:По времени CPU","назад"};
int chet=0;//счётчик кол-ва вызовов main()
printf("%s%s", menu[0], "\n\t\t\t");
printf("%s%s", menu[1], "\n\t\t\t");
printf("%s%s", menu[2], "\n\t\t\t");
printf("%s%s", menu[3], "\n\t\t\t");
printf("%s%s", menu[4], "\n\t\t\t");
printf("%s%s", menu[5], "\n\t\t\t");
printf("%s%s", menu[6], "\n\t\t\t");
printf("%s%s", menu[7], "\n\t\t\t");
printf("%s%s", menu[8], "\n\t\t\t");
printf("%s%s", menu[9], "\n\t\t\t\t");
case 0: view(20); break;//вызов просмотра
case 1:orgsortir();break;//сортировка
case 6:cout<<"Добавление в конец таблицы:"<<"\n";dob();break;
printf("%s%s", menufind[0], "\n\t\t\t");
printf("%s%s", menufind[1], "\n\t\t\t");
printf("%s%s", menufind[2], "\n\t\t\t");
printf("%s%s", menufind[3], "\n\t\t\t");
printf("%s%s", menufind[4], "\n\t\t\t");
printf("%s%s", menufind[5], "\n\t\t\t");
printf("%s%s", menufind[6], "\n\t\t\t");
printf("%s%s", menufind[7], "\n\t\t\t\t");
case 3:cout<<"Выполняется поиск по инициалам имени и отчества..."<<"\n"; find_char(0);break;
case 0:cout<<"Выполняется поиск по шифру..."<<"\n";find_char(1);break;
case 1:cout<<"Выполняется поиск по коду..."<<"\n";find_int(2);break;
case 2:cout<<"Выполняется поиск по фамилии..."<<"\n";find_char(3);break;
case 4:cout<<"Выполняется поиск по общему времени..."<<"\n";find_int(4);break;
case 5:cout<<"Выполняется поиск по времени CPU..."<<"\n";find_int(5);break;
case 6:cout<<"Выполняется поиск по % времени CPU..."<<"\n";find_int(6);break;
case 7: org(4);break;//возвращение в главное меню
printf("%s%s", menusortir[0], "\n\t\t\t");
printf("%s%s", menusortir[1], "\n\t\t\t");
printf("%s%s", menusortir[2], "\n\t\t\t");
printf("%s%s", menusortir[3], "\n\t\t\t");
printf("%s%s", menusortir[4], "\n\t\t\t");
printf("%s%s", menusortir[5], "\n\t\t\t");
printf("%s%s", menusortir[6], "\n\t\t\t");
printf("%s%s", menusortir[7], "\n\t\t\t");
printf("%s%s", menusortir[8], "\n\t\t\t\t");
case 0:sortir_int(7);view(20);break;
case 1:sortir_ch(1);view(20);break;
case 2:sortir_int(2);view(20);break;
case 3:sortir_ch(3);view(20);break;
case 4:sortir_ch(0);view(20);break;
case 5:sortir_int(4);view(20);break;
case 6:sortir_int(5);view(20);break;
case 7:sortir_int(6);view(20);break;
printf("%s%s", menuRW[0], "\n\t\t\t");
printf("%s%s", menuRW[1], "\n\t\t\t");
printf("%s%s", menuRW[2], "\n\t\t\t");
printf("%s%s", menuRW[3], "\n\t\t\t");
printf("%s%s", menuRW[4], "\n\t\t\t");
printf("%s%s", menuRW[5], "\n\t\t\t");
printf("%s%s", menuRW[6], "\n\t\t\t\t");
case 0:cout<<"Редактирование по шифру...";RW_ch(1);break;
case 1:cout<<"Редактирование по коду..."<<"\n";RW_int(2);break;
case 2:cout<<"Редактирование по фамилии...";RW_ch(3);break;
case 3:cout<<"Редактирование по инициалам имени и оотчества...";RW_ch(0);break;
case 4:cout<<"Редактирование по общему времени..."<<"\n";RW_int(4);break;
case 5:cout<<"Редактирование по времени CPU..."<<"\n";RW_int(5);break;
case 6: org(5);break;//возвращение в главное меню
Данная работа является примером программного продукта, который может быть использован в текстовых редакторах. Программа предназначена для проверки орфографии. Она позволяет наглядно представить список слов возможных вариантов правильного написания слова.
Для работы программа требует приблизительно 100 Кбайт оперативной памяти (зависит от количества строк). Данный объем позволяет программе выполнятся на самом широком круге компьютеров, фактических всех поддерживающих операционную систему DOS.
Для выполнения требуется процессор класса 80x86, цветной монитор, поддерживающий текстовый режим 80х25.
Размер входного файла зависит от размера текста в нем, для 30 записей составляет 4,17 Кбайта.
После запуска программы на экране по центру возникнет строка
“Введите путь к файлу данных”. Здесь необходимо указать файл, содержащий исходные данные. Длина пути не должна превышать 70 символов. После ввода правильного пути к файлу появится меню программы.
Управление программой состоит в выборе того или иного пункт меню. Ниже рассматриваются все пункты последовательно (рис 3.1).
Рисунок 3.1-Изображение меню программы.
1:Просмотр данных- показывает данные файла в виде таблицы .
2:Сортировка- упорядочивает строки таблицы по какому-либо полю.
При выборе этого пункта появляется меню сортировки (рис3.2).
Необходимо выбрать нужный пункт для соответствующей сортировки.
Рисунок 3.2- Изображение меню сортировки.
3:Процент времени CPU от общего времени выполнения- вычисление процента времени CPU от общего времени выполнения
4:Сумма общего времени и времени CPU- Вычисление суммы общего времени и суммы времени CPU.
5:Поиск-поиск поля таблицы. При выборе этого пункта появляется меню поиска аналогичное меню сортировки.
6:Редактирование- изменение поля таблицы.
7:Добавление- Добавление строки в конец списка.
8:Удаление- Удаление строки, по выбору, из списка.
10:Выход- обеспечивает выход из программы.
Если при не был найден входной файл (при загрузке программы) то по центру экрана выводится сообщение "Файл не найден!". Для указания нового
пути следует нажать ENTER, а для выхода из программы ESC.
Структура записей входного массива. Описание основных типов данных. Алгоритм программы: присвоение начальных значений переменных, чтение списка из файла, вывод данных на экран, выполнение обработки данных, сохранение списка в файл. Листинг программы. курсовая работа [325,2 K], добавлен 28.12.2012
Процедура ввода исходных данных в программу, вывод результатов работы программы на экран. Принцип организации хранения логически связанных наборов информации в виде файлов. Параметры характеристики файла, способы обращения к нему, соглашения по типу. реферат [14,5 K], добавлен 06.12.2011
Структура программного комплекса. Ввод информации из заданного файла. Создание набора данных. Добавление элементов в конец набора данных. Просмотр всех элементов набора данных. Копирование информации из НД в заданный файл. Сортировка массива по номерам. курсовая работа [630,5 K], добавлен 01.06.2014
Основы проверки и расчета входных данных и вывода выходных данных программы, их блок-схемы. Реализация функции считывания числовых данных из файла, управление (создание, уничтожение и редактирование) визуальными компонентами во время выполнения программы. контрольная работа [1,3 M], добавлен 12.06.2009
Технология и средства прикладного программирования. Физическая модель данных. Программа для управления базой данных. Добавление, удаление и редактирование информации. Трудоёмкость ведения базы данных взятых и оставшихся книг. Типы структуры данных. курсовая работа [2,3 M], добавлен 14.04.2014
Классификация баз данных. Создание списковой структуры, просмотр, удаление, сохранение в типизированном файле, восстановление из типизированного файла, поиск нужного элемента, создание отчета. Ввод, отображение и редактирование текстового материала. курсовая работа [2,8 M], добавлен 22.12.2016
Разработка программы на языке Си++ и осуществление постановки и выбора алгоритмов решения задач обработки экономической информации, создание и редактирование базы данных, сортировка записей по определенному запросу, анализ эффективности обработки данных. контрольная работа [316,8 K], добавлен 28.08.2012
Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д. PPT, PPTX и PDF-файлы представлены только в архивах. Рекомендуем скачать работу .

© 2000 — 2021



Программа обработки ведомости о времени выполнения задания на ЭВМ курсовая работа. Программирование, компьютеры и кибернетика.
Курсовая работа по теме Роль имущественного налогообложения российских юридических и физических лиц
Дипломная работа по теме Исследование особенностей граничного трения ротационным вискозиметром
По Какому Счету Невозможен Расчет Курсовых Разниц
Сшив Дипломной Работы
Курсовая работа по теме Дополнительные возможности метода диагностики межличностных отношений Т. Лири
Контрольная Работа Корни 9 Класс
Реферат: Исследование полевых транзисторов
Сочинение: Мое любимое стихотворение Есенина Тема родины
Функции Денег Реферат
Реферат: Иностранцы
Дипломная работа по теме Когнитивно-визуальный подход при обучении геометрии в 8 классе (на примере использования компьютерной среды Geogebra)
Курсовая работа: Профессиональная ориентация старшеклассников
Реферат: Секция методики преподавания графических дисциплин с использованием современных информационных технологий обучения
Лесков Собрание Сочинений
Курсовая работа: Особенности маркетинга в туризме. Скачать бесплатно и без регистрации
Сестринская Помощь При Ревматизме Реферат
Ескд Оформление Курсовой Работы
Курсовая работа по теме Программирование логических игр
Сочинение по теме Имею право
Реферат На Тему Полоролевая Социолизация Детей Дошкольного Возраста
Характеристика предприятия ООО "Арена" - Маркетинг, реклама и торговля дипломная работа
Организация охраны исправительного учреждения - Государство и право контрольная работа
Ранняя история монголов - История и исторические личности реферат


Report Page