Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TP_Metod_ukaz_k_KR.doc
Скачиваний:
279
Добавлен:
22.03.2016
Размер:
354.3 Кб
Скачать

5. Требования к программной документации

Разрабатываемые программные модули должны быть самодокументированны, т. е. тексты программ должны содержать все необходимые комментарии.

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

В состав сопровождающей документации должны входить:

Пояснительная записка на 25-30 листах, содержащая описание разработки.

Руководство системного программиста.

Руководство пользователя.

Графическая часть на трех листах формата А1:

Схема структурная программной системы.

Диаграмма компонентов данных.

Формы интерфейса пользователя.

Приложение 2. Образец титульного листа

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ

РОССИЙСКОЙ ФЕДЕРАЦИИ

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

имени В.Г. Шухова

Институт ИТУС

Кафедра Информационных технологий

Курсовой работа по дисциплине технологии программирования :

«Разработка игровой программы «АБВГДейка»

Выполнил студент группы ИТ- 11

Петров Петр Петрович

Проверил к.т.н., доц..

Белгород 2016

Приложение 3. Пример программы, моделирующей работу секундомера

Program Sekundomer;

Uses Crt,Graph;

Сonst Radius=100; { радиус циферблата }

OX=340; OY=240; { начало координат }

{клавиши управления}

KEYESC=27;

KEYENTER=13;

KEYSPACE=32;

VarGd,Gm:integer; {переменные, используемые при инициализации граф. режима}

Alpha:integer; {угол стрелки секундомера в градусах}

xAlpha:real; { угол стрелки секундомера в ражианах }

x2,y2:integer; {координаты острия стрелки}

flag:boolean; { признак старт/стоп секундомера}

key:char; {код нажатой клавиши}

count:integer; {счетчик}

st:string; {строка, содержащая текущее время в секундах}

{Процедура инициализации графического режима}

Procedure InitGR(Gd,Gm:integer);

begin

Gd:=Detect;

InitGraph(Gd,Gm,'c:\bp\bgi');

if GraphResult<> grOk then Halt(1);

end;

{ Процедура изображающая секундомер на экране }

Procedure DrawSecundomer(color:word);

Var i:integer;

Begin

ClearDevice;

SetColor(color);

Circle(OX, OY, 2);

SetLineStyle(SolidLn, 0, ThickWidth);

Circle(OX, OY, Radius);

OutTextXY(OX+Radius-10, OY, '3');

OutTextXY(OX, OY+Radius-10, '6');

OutTextXY(OX-Radius+10, OY, '9');

OutTextXY(OX, OY-Radius+10, '0');

SetLineStyle(SolidLn, 0, NormWidth);

line (OX, OY, OX, OY-Radius+3);

SetFillStyle(SolidFill, BLACK);

Bar(OX-30, OY-Radius-15, OX+30, OY-Radius-5);

Count:=Count+1;

Str((Count div 6), st);

OuttextXY(OX, OY-Radius-15, st);

End;

{основная часть программы}

begin

InitGR(Gd,Gm);

DrawSecundomer(YELLOW);

Alpha:=89;

flag:=false;

Count:=1;

{ цикл управления секундомером }

Repeat

if keypressed then key:=readkey;

{анализ кода нажатой клавиши}

case ord(key) of

KEYESC: break;

KEYSPACE: begin

if flag then begin

flag:=false;

setcolor(WHITE);

line (OX, OY, OX+(x2), OY-(y2));

end

else begin

flag:=true;

setcolor(BLACK);

line (OX, OY, OX, OY-Radius+3);

end;

key:='0';

end;

KEYENTER: begin

Alpha:=89;

flag:=false;

key:='0';

DrawSecundomer(YELLOW);

Count:=1;

end;

end;

if flag then begin

xAlpha:=Alpha*(Pi/180);

x2:=round(cos(xAlpha)*(Radius-3));

y2:=round(sin(xAlpha)*(Radius-3));

setcolor(WHITE);

line (OX, OY, OX+(x2), OY-(y2));

delay(5000);

setcolor(BLACK);

line (OX, OY, OX+(x2), OY-(y2));

Alpha:=Alpha-1;

setcolor(WHITE);

OutTextXY(OX+Radius-10, OY, '3');

OutTextXY(OX, OY+Radius-10, '6');

OutTextXY(OX-Radius+10, OY, '9');

OutTextXY(OX, OY-Radius+10, '0');

SetFillStyle(SolidFill, BLACK);

Bar(OX-30, OY-Radius-15, OX+30, OY-Radius-5);

Count:=Count+1;

Str((Count div 6), st);

OuttextXY(OX, OY-Radius-15, st);

end;

until ord(key)=KEYESC;

end.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]