Поиск

Полнотекстовый поиск:
Где искать:
везде
только в названии
только в тексте
Выводить:
описание
слова в тексте
только заголовок

Рекомендуем ознакомиться

Информатика->Контрольная работа
Основной задачей информатики является систематизация приемов и методов работы с аппаратными и программными средствами вычислительной техники. Цель сис...полностью>>
Информатика->Дипломная работа
В условиях рыночной экономики информация выступает как один из основных товаров. Успех коммерческой и предпринимательской деятельности связан с муници...полностью>>
Информатика->Курсовая работа
MathCAD – программа для выполнения инженерных и научных расчётов. Рабочая область программы представляется как обыкновенный лист, на котором уравнения...полностью>>
Информатика->Реферат
Задача построения демократического государства, основанного на рыночной экономике, выдвинули перед правовой наукой и практикой России целый комплекс п...полностью>>

Главная > Реферат >Информатика

Сохрани ссылку в одной из сетей:

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОСИЙСКОЙ ФЕДЕРАЦИИ

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

Кафедра вычислительной техники
_____________________________________________________________________

Дистанционное обучение

2000 – 2001 учебный год

ОТЧЕТ

о выполнении практических заданий

по курсу

ТЕХНОЛОГИЯ ПРОГРАММИРОВАНИЯ

Студента группы ВД – 49

Каретина Флориана Викторовича

Задание выполнил ________________ _____________________

подпись студента дата выполнения задания

Задание проверил ________________ _____________________

оценка подпись преподавателя

_______________________

дата проверки задания

Рецензия преподавателя

______________________________________________________________________

______________________________________________________________________

______________________________________________________________________

______________________________________________________________________

______________________________________________________________________

Описание программы созданной с помощью Turbo Visual.

Начинается программа с подключения библиотек Turbo Visual:

uses App, Objects, Menus, Drivers, Editors, Views;

Основной блок программы состоит из трех команд:

Begin

MyApp.Init; {Подготовить работу программы}

MyApp.Run; {Выполнить необходимые действия}

MyApp.Done; {Завершить исполнение программы}

End.

Для создания собственной строки статуса вводим следующее описание:

type

TMyApp=object(TApplication) {Создаем объект-потомок от TApplication}

procedure InitStatusLine; virtual; {Перекрываем старый метод InitStatusLine новым}

Описание нового метода, с помощью которого создается строка статуса:

Procedure TMyApp.InitStatusLine;

Var R:TRect; {хранит границы строки статуса}

Begin

GetExtent(R); {устанавливает R в координаты всего экрана}

R.A.Y:=R.B.Y-1; {передвигает вершину выше нижней на 1 строку}

StatusLine:=New(PStatusLine, Init(R, {создает строку статуса}

NewStatusDef(0,$FFFF, {устанавливает диапазон контекстного Help}

NewStatusKey('~Alt-X~ Exit', kbAltX, cmQuit, {определяет элемент}

NewStatusKey('~Alt-F3~ Close', kbAltF3, cmClose, {другой}

nil)), {больше нет клавиш}

nil))) {больше нет определений}

End;

Формирование меню:

Описание в разделе типов:

TMyApp=object(TApplication) {Создаем объект-потомок от TApplication}

procedure InitMenuBar; virtual; {Перекрываем старый метод InitMenuBar новым}

Тело процедуры:

procedure TMyApp.InitMenuBar;

Var R:TRect;

Begin

GetExtent(R); {устанавливает R в координаты всего экрана}

R.B.Y:=R.A.Y+1;

MenuBar:=New(PMenuBar, Init(R, NewMenu( {создать полосу меню}

NewSubMenu('~F~ile', hcNoContext, NewMenu( {определить меню}

StdFileMenuItems(nil)), {стандратная функция определения элементов}

{меню File}

NewSubMenu('~W~indow', hcNoContext, NewMenu( {определить меню}

StdWindowMenuItems(nil)), {стандратная функция определения элементов}

{меню Window}

nil) {больше нет подменю}

)))); {конец полосы}

End;

Создание окон и манипуляции с ними:

Описание:

procedure NewWindow; virtual;

procedure HandleEvent(var Event:TEvent); virtual;

end;

PDemoWindow=^TDemoWindow; {тип указателя для нового объектного типа}

TDemoWindow=object(TWindow) {определение нового типа окна}

constructor Init(Bounds: TRect; WinTitle:String; WindowNo: Integer);

end;

PInterior=^TInterior;

TInterior=object(TScroller)

constructor Init(var Bounds:TRect; HS, VS: PScrollBar);

procedure Draw; virtual;

procedure HandleEvent(var Event:TEvent); virtual;

end;

Описание тела конструктора инициализации окна:

constructor TDemoWindow.Init(Bounds: TRect; WinTitle:String; WindowNo: Integer);

var

S:String[3];

Interior:PInterior;

HS, VS: PScrollBar;

begin

Str(WindowNo,S); {устанавливает номер окна в заколовке}

TWindow.Init(Bounds, WinTitle+' '+S, wnNoNumber);

GetClipRect(Bounds);

Bounds.Grow(-1,-1); {интерьер помещается внутри рамки окна}

VS:=StandardScrollBar(sbVertical+sbHandleKeyBoard); {разрешение перемещения вертикального бегунка стрелками на клавиатуре}

HS:=StandardScrollBar(sbHorizontal+sbHandleKeyBoard); {разрешение перемещения горизонтального бегунка стрелками на клавиатуре}

Interior:=New(PInterior, Init(Bounds, HS, VS));

Insert(Interior); {добавляет интерьер к окну}

end;

Описание конструктора инициализации интерьера:

constructor TInterior.Init(var Bounds:TRect; HS, VS: PScrollBar);

begin

TScroller.Init(Bounds, HS, VS);

GrowMode:=gfGrowHiX+gfGrowHiY;

end;

Описание процедуры прорисовки интерьера окна:

procedure TInterior.Draw;

begin

TScroller.Draw; {Вызов стандартной прорисовки}

WriteStr(0,0,'Текст в окне',1); {Вывод текста в окно}

TScroller.ShowCursor; {Показать курсор}

end;

Описание тела процедуры создания нового окна:

procedure TMyApp.NewWindow;

var

Window:PDemoWindow;

R: TRect;

Begin

Inc(WinCount);

R.Assign(0,0,26,7); {установка начального размера и позиции}

R.Move(Random(58),Random(16)); {случайное перемещение по экрану}

Window:=New(PDemoWindow, Init(R, 'Demo Window', WinCount));

DeskTop^.Insert(Window); {вывести окно на панель экрана}

End;

Описание тела процедуры обработки команд среды

procedure TMyApp.HandleEvent(var Event:TEvent);

Begin

TApplication.HandleEvent(Event); {действует как предок}

if Event.What=evCommand Then

Begin

case Event.Command of {но откликается на дополнительные команды}

cmNew: NewWindow; {определяет действие для команды cmNew}

else

Exit;

End;

ClearEvent(Event); {очищает событие после обработки}

end;

End;

Описание тела процедуры обработки команд в окне

procedure TInterior.HandleEvent(var Event:TEvent);

Begin

TScroller.HandleEvent(Event); {действует как предок}

case Event.What of {проверка события}

evKeyDown: {если нажата клавиша}

Begin

Case Event.KeyCode of {проверка: какая клавиша нажата}

kbLeft: {стрелка влево}

begin

if x>0 then {если координата по Х больше 0}

Begin

x:=x-1; {то уменьшить ее на 1}

SetCursor(x,y); {установить на новую координату курсор}

End

end;

kbRight: {стрелка вправо}

begin

x:=x+1; {увеличить координату по Х на единицу}

SetCursor(x,y); {установить на новую координату курсор}

end;

kbUp: {стрелка вверх}

begin

if y>0 then {если координата по Y больше 0}

Begin

y:=y-1; {то уменьшить ее на 1}

SetCursor(x,y); {установить на новую координату курсор}

End

end;

kbDown: {стрелка вниз}

begin

y:=y+1; {увеличить координату по Y на 1}

SetCursor(x,y); {установить на новую координату курсор}

end;

end;

Case Event.ScanCode of {проверка скан-кода клавиатуры}

57: {если пробел}

begin

If GetState(sfCursorVis) Then {если курсор виден}

TScroller.HideCursor {то скрыть его}

Else

TScroller.ShowCursor; {иначе показать его}

end;

end;

End;

end;

End;

Описание игровой программы «Стрельба по мишени».

Игровая программа состоит из трех процедур (minv — уменьшение кол-ва патронов, intro — заставка, go — конец игры) и основного блока программы.

Процедура minv (уменьшение количества патронов).

kv:=kv-1; {уменьшение значение переменной kv (в основной программе она фигурирует как количество патронов) }

setfillstyle(1,9); {установка стиля заполнения фона}

bar((20-kv)*10+415,4,(20-kv)*10+425,12); {стирание одного патрона с экрана}

Процедура intro; {Заставка}

Выводит заставку игры.

settextstyle(0,0,15); {установка стиля текста}

setcolor(12); {установка цвета}

outtextxy(140,100,'ТИР'); {вывод текста}

settextstyle(0,0,2);

setcolor(10);

outtextxy(130,290,'ESC - ');

setcolor(14);

outtextxy(220,290,'Выход из программы');

settextstyle(0,0,1);

tp:='НАЖМИТЕ ЛЮБУЮ КНОПКУ ДЛЯ НАЧАЛА ИГРЫ';

settextstyle(0,0,1);

setcolor(11);

outtextxy(320-trunc(length(tp)*4),340,tp); {вывод текста с расчетом по центру}

a:=readkey;

if ord(a)=27 then exi:=true; {если нажата клавиша Esc – выйти из игры}

setfillstyle(1,0);

bar(100,30,600,350);

Процедура go – выводит заставку конца игры

procedure go; {Конец игры}

begin

settextstyle(0,0,5); {установка стиля вывода текста}

setcolor(2); {установка цвета}

outtextxy(50,200,'ВСЕ,ДОИГРАЛИСЬ');

settextstyle(0,0,2);

readkey;

UROV:=1;MENU:=true;oko:=0;

end;

Основное тело программы

begin

d:=vga;initgraph(d,r,''); {инициализация графики}

setgraphmode(2); {установка графического режима}

randomize; {вызов генератора случайных чисел}

urov:=1;oko:=0; mus:=true; sou:=true;menu:=true; {первоначальная установка переменных}

repeat {начало основного цикла программы}

{Cоздание интерфейса}

cleardevice; {очистака экрана}

setfillstyle(1,1); {установка стиля заполнения фона}

bar(0,0,640,2); {рисование прямоугольников вокруг рабочей области}

bar(0,0,2,480);

bar(0,480,640,478);

bar(640,480,638,0);

setfillstyle(1,9);

bar(2,2,638,17);

bar(2,2,5,478);

bar(2,478,638,475);

bar(638,2,635,478);

setfillstyle(1,3);

bar(5,17,635,19);

bar(5,17,7,475);

bar(5,475,635,473);

bar(635,17,633,475);

setfillstyle(9,14);

setcolor(14); {установка цвета рисования}

moveto(7,460); {перемещение графического курсора в указанные координаты}

for i:=1 to 62 do {рисование песка холмиками}

lineto(i*10+7,460+random(10));



Загрузить файл

Похожие страницы:

  1. Разработка комплексных программ по решению актуальных социальных проблем

    Дипломная работа >> Социология
    ... и задач, выбором соответствующего объекта и разработкой программы. Контроль за ходом эксперимента предусматривает ... экстраполяционное), факторное (аналитическое) и эвристическое (имитационное и игровое) моделирование. Метод социальных образцов (разновидность ...
  2. Разработка Windows-программ. Знакомство с Delphi

    Контрольная работа >> Информатика, программирование
    ... параметр [/s | /r] ? т.е. save | rewrite Спецификация на разработку программы: Программа копирует один или несколько файлов ... в сети Inernet Наиболее яркие представители - игровые программы В последние годы вид интерфейсов определяет ...
  3. РАЗРАБОТКА АНИМАЦИОННОЙ ПРОГРАММЫ

    Реферат >> Физкультура и спорт
    ... . Следовательно, аниматор – специалист, занимающийся разработкой индивидуальных и коллективных программ проведения досуга, ориентирующий человека ... стесняется выразить, высвобождаются, как правило, в игровой ситуации. Поэтому игра является мощным ...
  4. Использование игровых технологий в воспитании старшеклассников

    Курсовая работа >> Педагогика
    ... с учетом возрастных особенностей ребенка. При разработке игровых программ организаторы должны быть сориентированы не ... проблем, определение целей, выработка решения, разработка проекта, разработка программы реализации) в ходе игры с обсуждением ...
  5. Создание игровой программы Pacman

    Реферат >> Информатика
    ... работе изложен материал по разработке программного продукта «Игровая программа “Pacman”», созданного для использования ... Выбор языка и технологии разработки В качестве языка программирования для реализации игровой программы “Pacman” выбран ...

Хочу больше похожих работ...

Generated in 0.0068929195404053