Мегаобучалка Главная | О нас | Обратная связь


А.4.4 Организационные требования



2020-02-04 142 Обсуждений (0)
А.4.4 Организационные требования 0.00 из 5.00 0 оценок




 

Программный продукт должен:

- быть разработан на языке С;

- функционировать под ОС MS-DOS 5.0 и выше;

- быть снабжённым пояснительной запиской объёмом не менее 30 страниц и руководством пользователя.

Этапы разработки и плановые сроки выполнения указаны в таблице А.1

Таблица A.1 – График выполнения курсового проекта

Этапы работы Срок выполнения (недели)
1 Постановка задачи: формулировка, исходные данные, результаты, определение требований к программному продукту. 1
1. Составление технического задания 1-2
2. Техническое проектирование. Изучение метода решения задачи. 2-3
3. Рабочее проектирование. Определение структур входных и выходных данных. Оценки структур данных и ал­горитмов. 4
4.  Написание алгоритмов удаления элементов по различных значениях ключа. 5
5. Написание алгоритмов очистки внешних таблиц 6-8
6. Создание файлов помощи по алгоритму и по программе 9
7. Отладка и тестирование. 10
8. Написание пояснительной записки 10-14
9. Защита курсового проекта. 28.12.2003

 


Приложение Б

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

Б.1 Меню

 

Передвижение по меню осуществляется с помощью клавиш “↑” и “↓”. Для выбора пункта меню нужно нажать Enter. Для выхода из меню нужно нажать ESC. Передвижение по пунктам подменю осуществляется с помощью клавиш “↑” и “↓”. Для выбора пункта подменю нужно нажать клавишу Enter. Для выхода из подменю нужно нажать клавишу ESC. Из основного меню путем нажатия клавиши Esc осуществляется вызов пункта меню “Выход”.

 

Б.1.1 Пункт «Файл»

На экран выводится вертикальное меню, состоящее из трех подпунктов: “Загрузка”, “Очистка”, “Выход”. Хождение по меню осуществляется с помощью нажатия клавиш <↑> и <↓>. Для выбора одного из пунктов необходимо нажать клавишу Enter.

 

Б.1.1.1 Подпункт «Загрузка»

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

 

Б.1.1.2 Подпункт «Очистка»

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

 

Б.1.1.3 Подпункт «Выход»

Смотри пункт “Выход”.

 

Б.1.2 Пункт «Удаление»

На экран выводится вертикальное меню, состоящее из трех подпунктов: “По номеру”, “По интервалу”, “По ключу”. Хождение по меню осуществляется с помощью нажатия клавиш <↑> и <↓>. Для выбора одного из пунктов необходимо нажать клавишу Enter.

 

Б.1.2.1 Подпункт «По номеру»

На экран выводится окошко с запросом о вводимом удаляемом порядковом номере элемента, после чего нужно ввести число, нажать клавишу Enter. Далее произойдет удаление элемента таблицы под заданным номером и вывод содержимого файла на экран. Для экстренной остановке выполнения какой-нибудь команды, используйте клавишу Esc.

 

Б.1.2.2 Подпункт «По интервалу»

На экран выводится окошко с запросом о вводимом интервале удаляемых элементов, после чего нужно ввести 2 числа (начального и конечного удаляемого элемента), нажать клавишу Enter. Далее произойдет удаление элементов таблицы под заданным номером и вывод содержимого файла на экран. Для экстренной остановке выполнения какой-нибудь команды, используйте клавишу Esc.


Б.1.2.3 Подпункт «По ключу»

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

 

Б.1.3 Пункт «Помощь»

 

На экран выводится справка об эксплуатации программы.

 

Б.1.4 Пункт «Выход»

 

При выборе этого пункта программа завершит свою работу.


Приложение В

 

ЭКРАННЫЕ ФОРМЫ

 

Рисунок В.1 – Начальный вид экрана

 

Рисунок В.2 – Вид экрана после выбора пункта меню “Файл”-“Загрузка”

Рисунок В.3 – Реакция программы на отсутствие загружаемого файла

 

Рисунок В.4 – Вид экрана после выбора пункта меню “Удаление”-“По номеру”

 

Рисунок В.5 – Загрузка файла справки

 

Рисунок В.6 – Запрос о выходе из программы


Приложение Г

ЛИСТИНГ ПРОГРАММЫ

 

#include <stdio.h>

#include <conio.h>

#include <graphics.h>

#include <alloc.h>

#include <dos.h>

#include <string.h>

#include <stdlib.h>

 

int a,b,d=1,d2=1,i,j,m,l=0,x=0,z=0,n,p=0,r=0,k=0,nomer=0,nom;

int mode=VGAHI;

int driver=VGA;

char kluch[10];

int nach, con;

FILE *in;

char ch,*v,h[10],cd[50],*str,c[5],s[50],cf[50],cb;

void *buf,*buf1, *buf2, *buf3;

struct type

 {

 char nazv[10];

 char kol[10];

 char sum[10];

 char kl[10];

 } tablica[15],*ukz;

 

void imya();

void del()

{FILE *in;

 char fname[11];

 

setfillstyle(SOLID_FILL,0);

bar(200,100,500,300);

setcolor(4);

outtextxy(300,152,"‚ўҐ¤ЁвҐ Ёп д ©« !!!(*.in)");

outtextxy(315,162,"max 2 бЁў®« :_");

rectangle(301,174,463,185);

imya();

in = fopen(s,"w");

fclose(in);

 

outtextxy(300,152,"” ©« ®зЁйҐ­!!!");

}

 

 

void record(void)

{ char ch,name[11];

 FILE *out;

 int j=0;

 

 clrscr();

 printf("•®вЁвҐ б®еа ­Ёвм Ё­д®а жЁо ў д ©«(y - ¤ , Ё­ зҐ ­Ґв):");

 ch=getch();

 if (ch=='y')

 {

 do

 {

    clrscr();

    printf("‚ўҐ¤ЁвҐ Ёп д ©« (*.out):");

    scanf("%s",name);

    out=fopen(name,"w");

 }while (out==NULL);

 

 for (j=0;j<=n;j++)

 {

 fprintf(out,"%s\n",tablica[j].nazv);

 fprintf(out,"%s\n",tablica[j].kol);

 fprintf(out,"%s\n",tablica[j].sum);

 fprintf(out,"%s\n",tablica[j].kl);}

 

 clrscr();

 gotoxy(32,13);

 printf("‡ ЇЁбм Їа®Ё§ўҐ¤Ґ­ гбЇҐи­®!");

 getch();

 fclose(out);

 }

}

void interval()

{

 setfillstyle(SOLID_FILL,0);

 setcolor(4);

 outtextxy(300,202,"‚ўҐ¤ЁвҐ ­Ё¦­оо Ја ­Ёжг!!!(*.in)");

 outtextxy(315,212,"max 2 бЁў®« :_");

 rectangle(301,224,463,235);

p=0;

do{

 a=getch();

 

 if ((a!=13)&&(a!=8)&&(a!=27))

 { s[p]=a; p++; s[p]='\x0';}

 

 bar(302,225,302+textwidth(s),226+textheight(s));

 if (a==8) if (p>0) s[--p]='\x0';

 outtextxy(302,225,s);

 

 if(strlen(s)>15)

 {

 outtextxy(250,220,"Ѓ®«миҐ бЁў®«®ў ўўҐбвЁ ­Ґ«м§п!!!!");

 outtextxy(250,230," „«п Їа®¤®«¦Ґ­Ёп ­ ¦ЁвҐ Enter");

 do

 {

 a=getch();

 }while (a!=13);

 }

 }while(a!=13);

 setfillstyle(SOLID_FILL,0);

 bar(300,202,600,235);

 nach=atoi(s);

setfillstyle(SOLID_FILL,0);

setcolor(4);

outtextxy(300,202,"‚ўҐ¤ЁвҐ ўҐае­оо Ја ­Ёжг!!!(*.in)");

outtextxy(315,212,"max 2 бЁў®« :_");

rectangle(301,224,463,235);

p=0;

do{

 a=getch();

 

 if ((a!=13)&&(a!=8)&&(a!=27))

 { s[p]=a; p++; s[p]='\x0';}

 

 bar(302,225,302+textwidth(s),226+textheight(s));

 if (a==8) if (p>0) s[--p]='\x0';

 outtextxy(302,225,s);

 

 if(strlen(s)>15)

 {

 outtextxy(250,220,"Ѓ®«миҐ бЁў®«®ў ўўҐбвЁ ­Ґ«м§п!!!!");

 outtextxy(250,230," „«п Їа®¤®«¦Ґ­Ёп ­ ¦ЁвҐ Enter");

 do

 {

 a=getch();

 }while (a!=13);

 }

 }while(a!=13);

 setfillstyle(SOLID_FILL,0);

 bar(164,24,606,446);

 con=atoi(s);

 i=0;j=0;x=0;k=0;

 outtextxy(175,30,"Ќ® ?­¤ҐЄб Ќ §ў ­ЁҐ ‘г Љ«оз");

 do

 {

 i++;x+=10;j++;

 

 if (i==nach)

 {

 do

 {

 i++;

 }

 while (i>=con);

 }

 itoa(j,c,10);

 outtextxy(180,50+x,c);

 outtextxy(220,50+x,ukz[i].nazv);

 outtextxy(290,50+x,ukz[i].kol);

 outtextxy(390,50+x,ukz[i].sum);

 outtextxy(460,50+x,ukz[i].kl);

 }while (i!=n);

 

getch();

}

void load(void)

{

 FILE *in;

 char fname[11];

 int i=1;

 setfillstyle(SOLID_FILL,0);

setcolor(4);

outtextxy(300,152,"‚ўҐ¤ЁвҐ Ёп д ©« !!!(*.in)");

outtextxy(315,162,"max 20 бЁў®«®ў:_");

rectangle(301,174,463,185);

 imya();

 in = fopen(s,"r");

 do

 { fgets(ukz->nazv,10,in);

 fgets(ukz->kol,10,in);

 fgets(ukz->sum,10,in);

 fgets(ukz->kl,10,in);

 i++;

 k++;

 } while(!feof(in));

 

 rewind(in);

 i=1;

 outtextxy(175,30,"Ќ® ?­¤ҐЄб Ќ §ў ­ЁҐ ‘г Љ«оз");

 ukz=(struct type *)malloc(sizeof(struct type)*k);

 do

 {i++;

 itoa(i-1,c,10);

 x+=10;

 outtextxy(180,50+x,c);

 fscanf(in,"%s",ukz[i-1].nazv);

 outtextxy(220,50+x,ukz[i-1].nazv);

 

 fscanf(in,"%s",ukz[i-1].kol);

 outtextxy(290,50+x,ukz[i-1].kol);

 

 fscanf(in,"%s",ukz[i-1].sum);

 outtextxy(390,50+x,ukz[i-1].sum);

 

 fscanf(in,"%s",ukz[i-1].kl);

 outtextxy(460,50+x,ukz[i-1].kl);

 n=i;

 }while (!feof(in));

 

 fclose(in);

 }

 openf (char s[20])

{

 

                                          setfillstyle(SOLID_FILL,0);

                                          bar(164,24,606,446);

                                          z=0;

                                          k=0;

                                          in=fopen(s,"r");

                                          setviewport(164,24,606,446,0);

                                          rewind(in);

                                          while(fgets(cd,53,in)!=NULL)

 

                                                   {

 

                                                   a=strlen(cd);

 

                                                   if(cd[a-1]=='\n')

                                                   cd[a-1]=' ';

                                                   setcolor(7);

                                                   outtextxy(10,10+x,cd);

                                              x+=10;

                                                   k++;

                                          }

 

                                  a=getch();

                                 while (a!=27)

                                  {

                                  a=getch();

                                  }

                                 k=0;

                                 x=0;

                                 clearviewport();

                                 setviewport(0,0,639,479,0);

                                 fclose(in);

 

 

 return(0);

}

 

void imya()

{

 p=0;

 do{

 a=getch();

 if ((a!=13)&&(a!=8)&&(a!=27))

 { s[p]=a; p++; s[p]='\x0';}

 

 bar(302,175,302+textwidth(s),176+textheight(s));

 if (a==8) if (p>0) s[--p]='\x0';

 outtextxy(302,175,s);

 

 if(strlen(s)>19)

 {

 outtextxy(250,200,"Ѓ®«миҐ бЁў®«®ў ўўҐбвЁ ­Ґ«м§п!!!!");

 outtextxy(250,210," „«п Їа®¤®«¦Ґ­Ёп ­ ¦ЁвҐ Enter");

 do

 {

 a=getch();

 }while (a!=13);

 }

 }while(a!=13);

 setfillstyle(SOLID_FILL,0);

 bar(164,24,606,446);

}

 liniya (int k,int m,int n)

{ setcolor(n);

 line(130,20+k*60,130,50+k*60);

 line(20,50+k*60,130,50+k*60);

 setcolor(m);

 line(20,20+k*60,20,50+k*60);

 line(20,20+k*60,130,20+k*60);

 

return 0;

}

 

liniya2(int i,int m,int n)

{

 setcolor (m);

 line(20,300+i*60,20,330+i*60);

 line(20,300+i*60,130,300+i*60);

 setcolor (n);

 line(130,300+i*60,130,330+i*60);

 line(20,330+i*60,130,330+i*60);

 return 0;

}

void nomer1()

{

setfillstyle(SOLID_FILL,0);

setcolor(4);

outtextxy(300,202,"‚ўҐ¤ЁвҐ ­®Ґа § ЇЁбЁ!!!(*.in)");

outtextxy(315,212,"max 2 бЁў®« :_");

rectangle(301,224,463,235);

p=0;

do{

 a=getch();

 if ((a!=13)&&(a!=8)&&(a!=27))

 { s[p]=a; p++; s[p]='\x0';}

 

 bar(302,225,302+textwidth(s),226+textheight(s));

 if (a==8) if (p>0) s[--p]='\x0';

 outtextxy(302,225,s);

 

 if(strlen(s)>15)

 {

 outtextxy(250,220,"Ѓ®«миҐ бЁў®«®ў ўўҐбвЁ ­Ґ«м§п!!!!");

 outtextxy(250,230," „«п Їа®¤®«¦Ґ­Ёп ­ ¦ЁвҐ Enter");

 do

 {

 a=getch();

 }while (a!=13);

 }

 }while(a!=13);

 setfillstyle(SOLID_FILL,0);

 bar(164,24,606,446);

 nom=atoi(s);

 i=0;j=0;x=0;

 outtextxy(175,30,"Ќ® ?­¤ҐЄб Ќ §ў ­ЁҐ ‘г Љ«оз");

 m=n;

 do

 { x+=10;

 i++; j++;

 if((i==nom)&&(i==n)) break;

 if(i==nom){i++;m-=1;}

 itoa(j,c,10);

 outtextxy(180,50+x,c);

 outtextxy(220,50+x,ukz[i].nazv);

 outtextxy(290,50+x,ukz[i].kol);

 outtextxy(390,50+x,ukz[i].sum);

 outtextxy(460,50+x,ukz[i].kl);

 

 }while (i!=m);

 

 getch();

}

void kluchik()

{

setfillstyle(SOLID_FILL,0);

setcolor(4);

outtextxy(300,202,"‚ўҐ¤ЁвҐ Є«оз (*.in)");

outtextxy(315,212,"max 2 бЁў®« :_");

rectangle(301,224,463,235);

p=0;

do{

 a=getch();

 

 if ((a!=13)&&(a!=8)&&(a!=27))

 { s[p]=a; p++; s[p]='\x0';}

 

 bar(302,225,302+textwidth(s),226+textheight(s));

 if (a==8) if (p>0) s[--p]='\x0';

 outtextxy(302,225,s);

 

 if(strlen(s)>15)

 {

 outtextxy(250,220,"Ѓ®«миҐ бЁў®«®ў ўўҐбвЁ ­Ґ«м§п!!!!");

 outtextxy(250,230," „«п Їа®¤®«¦Ґ­Ёп ­ ¦ЁвҐ Enter");

 do

 {

 a=getch();

 }while (a!=13);

 }

 }while(a!=13);

 setfillstyle(SOLID_FILL,0);

 bar(164,24,606,446);

 strcpy(kluch,s);

 v=s;

 i=0;j=0;x=0;

 outtextxy(175,30,"Ќ® ?­¤ҐЄб Ќ §ў ­ЁҐ ‘г Љ«оз");

 do

 { x+=10;

 i++;j++;

 if (ukz[i-2].kl==v) i++;

    itoa(j,c,10);

 outtextxy(180,50+x,c);

 outtextxy(220,50+x,ukz[i-1].nazv);

 outtextxy(290,50+x,ukz[i-1].kol);

 outtextxy(390,50+x,ukz[i-1].sum);

 outtextxy(460,50+x,ukz[i-1].kl);

 

 }while (i!=n);

 getch();

}

file (char str1[5],char str2[5],char str3[5])

{

 d2=1;

 setfillstyle(SOLID_FILL,1);

 for (i=0;i<3;i++)

 {

 bar(20,300+i*60,130,330+i*60);

 liniya2(i,9,0);

 }

 

 while (a!=27)

 {

 setcolor(6);

 outtextxy(27,310,str1);

 outtextxy(27,370,str2);

 outtextxy(27,430,str3);

 

    if ((a==80)||(a==72))

     {

     if (a==80) d2++;

     if (a==72) d2--;

     if (d2>3) d2=1;

     if (d2<1) d2=3;

     }

     if ((d2==1)&&(nomer==1))

     {

     setcolor(4);

     outtextxy(27,310,str1);

 

     liniya2(0,0,9);

              a=getch();

     liniya2(0,9,0);

     if (a==13)

              {

               del();

              }else continue;

     }

     if ((d2==1)&&(nomer==2))

     {

     setcolor(4);

     outtextxy(27,310,str1);

     liniya2(0,0,9);

              a=getch();

 

              if (a==13)

              {

               nomer1();

              }

     liniya2(0,9,0);

     }

     if ((d2==2)&&(nomer==1))

     {

     setcolor(4);

 

     outtextxy(27,370,str2);

 

               liniya2(1,0,9);

     a=getch();

              if (a==13)

              {

               load();

              }

     liniya2(1,9,0);

     }

     if ((d2==2)&&(nomer==2))

     {

     setcolor(4);

     outtextxy(27,370,str2);

     liniya2(1,0,9);

     a=getch();

              if (a==13)

              {

               kluchik();

              }

 

     liniya2(1,9,0);

     }

     if ((d2==3)&&(nomer==2))

     {

     setcolor(4);

 

     outtextxy(27,430,str3);

 

     liniya2(2,0,9);

     a=getch();

     liniya2(2,9,0);

              if (a==13)

              {

               interval();

              }

              else continue;

 

     liniya2(2,9,0);

     }

 }

setfillstyle(SOLID_FILL,8);

bar(20,300,130,460);

return 0;

}

 

 

void interfice()

{

 setfillstyle(SOLID_FILL,8);

 bar(0,0,640,480);

 setfillstyle(SOLID_FILL,0);

 bar(164,24,606,446);

 setfillstyle(SOLID_FILL,1);

 for (i=0;i<4;i++)

 {

 bar(20,20+i*60,130,50+i*60);

 liniya(i,9,0);

 }

 setfillstyle (SOLID_FILL,1);

 bar(160,20,163,450);

 bar(20,265,163,268);

 bar(160,20,610,23);

 bar(607,20,610,450);

 bar(160,447,610,450);

 d=1;

 while (ch!=27)

 {

 setcolor(6);

 outtextxy(60,30,"”Ђ‰‹");

 outtextxy(45,90,"“„Ђ‹…Ќ?…");

 outtextxy(45,150,"‘ЏђЂ‚ЉЂ");

 outtextxy(55,210,"‚›•Ћ„");

 

    if ((a==80)||(a==72))

     {

     if (a==80) d++;

     if (a==72) d--;

     if (d>4) d=1;

     if (d<1) d=4;

     }

     if (d==1)

     {

     nomer=1;

     setcolor(4);

     outtextxy(60,30,"”Ђ‰‹");

     liniya(0,0,9);

     a=getch();

     liniya(0,9,0);

     if (a==13)

     {

              file("Ћ—?‘’ЉЂ","‡Ђѓђ“‡ЉЂ","");

     }else continue;

     }

     if (d==2)

     {

     setcolor(4);

     nomer=2;

     outtextxy(45,90,"“„Ђ‹…Ќ?…");

     liniya(1,0,9);

     a=getch();

     liniya(1,9,0);

     if (a==13)

     {

              file("ЏЋ ЌЋЊ…ђ“","ЏЋ Љ‹ћ—“","ЏЋ ?Ќ’…ђ‚Ђ‹“");

 

     }else continue;

     }

     if ((d==3))

     {

     setcolor(4);

     outtextxy(45,150,"‘ЏђЂ‚ЉЂ");

     liniya(2,0,9);

     a=getch();

     liniya(2,9,0);

     if (a==13)

     {

     openf("e:\\bc31\\bin\\help.dat");

     }

     else continue;

     }

     if (d==4)

     {

     setcolor(4);

     outtextxy(55,210,"‚›•Ћ„");

     liniya(3,0,9);

     a=getch();

     liniya(3,9,0);

     if (a==13)

     {

     break;

     }

 else continue;

     }

 }

}

void main(void)

{

 initgraph(&driver,&mode,"e:\\bc31\\bin");

 interfice();

 closegraph();

}



2020-02-04 142 Обсуждений (0)
А.4.4 Организационные требования 0.00 из 5.00 0 оценок









Обсуждение в статье: А.4.4 Организационные требования

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

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



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (142)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.01 сек.)