Допомога у написанні освітніх робіт...
Допоможемо швидко та з гарантією якості!

Обертання трикутника

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Список літератури |1 — Епанешников А. М., Епанешников В. А., Програмування серед TURBO| — |PASCAL 7.0.-Москва:"Диалог-МИФИ", 1995 — |2 |Зуєв Е.А., Система програмування Turbo Pascal.-Москва: СП — | |"Диалог", 1992 — |3.|Довгаль С.І., Сбинтев А.І., Персональые ЕОМ: TURBO PASCAL V7.0, — | |Обектное программирование.-Киев: «Двгаль», 1995 |. Ця курсова робота представляє розробку програмного продукту… Читати ще >

Обертання трикутника (реферат, курсова, диплом, контрольна)

Опис програми 4.

2.1 Загальні відомості 5 2.2 Використовувані технічні cредства 7 2.3 Інструкція з виконання 8 2.4 Вхідні і вихідних даних 9 2.5 Випробування програми 9.

Заключение

9.

Список літератури 11.

ПРИЛОЖЕНИЕ 1 (ТЕКСТ ПРОГРАММЫ)…12.

Мова Turbo-Pascal — одне із найбільш поширених мов програмування комп’ютерів. До важливим гідностям мови Turbo-Pascal належить невеличкий розмір компілятора, висока швидкість трансляції програм, компіляції та його компонування. З іншого боку, зручність і високу якість дизайну діалогової оболонки, роблять написання і налагодження програм найзручнішим тоді як альтернативними мовами нового поколения.

Ця курсова робота представляє розробку програмного продукту з допомогою системного мови нового рівня — Turbo-Pascal. Ця програма дозволяє кожному користувачеві (із кожним рівнем комп’ютерної грамотності) виробляти необхідні розрахунки дуже швидко і достатній рівень сервиса.

1 Постановка задачи.

Темою даного курсового проекту, який був виконаний ході вивчення курсу «Основи програмування і алгоритмічні мови», — розробка програми до роботи на графічному режимі із правильною трикутником, використовуючи елементи перерахунку координат його вершин під час обертання трикутника навколо описаної біля нього окружності .

Умова завдання :

Дан рівносторонній трикутник. Потрібна крутити їх у площині екрана навколо центру описаної навколо неї окружности.

2 Розробка алгоритма.

Алгоритм роботи програми має розгалужену структуру.

Програма складається з з трьох основних частин :

1. Опис змінних використовуваних під час вирішення поставленої задачи.

2. Опис процедур з яких реалізували дана программа.

3. Тіло головною програми, що є найважливішої складовою рішення поставленої задачи.

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

У конкурсній програмі використовуються стандартні модулі мови Turbo-Pascal з набором процедур, необхідні виконання работы.

Під час упорядкування процедур було використано класичні методи прорахунку координат вершин трикутника, виведення результату на экран.

До програми також було включено функції надають користувачеві певний сервіс і зручність під час роботи (використання модулів Turbo-Vision 2.0 for Borland Pascal).

Опис программы.

1 Загальні сведения.

Ця програма варта візуального відображення обертового трикутника у площині экрана.

Вимоги до Turbo-Pascal: Наявність модулів Crt, Graph, System, Drivers. Модуль System є автоматично подключаемым і зберігає все процедури і функції стандартного Паскаля, і навіть вбудовані процедури і функції Турбо Паскаля, модуль Crt містить процедури і функції, щоб забезпечити управління текстовим режимом роботи екрана. З допомогою які входять у модуль підпрограм можна переміщати курсор в довільну позицію екрана, змінювати колір виведених символів і навколишнього фону, створювати й видаляти вікна. З іншого боку, в модулі містяться процедури управління звуком і складні процедури роботи з клавіатурою. Сервіс під час роботи в графічному режимі надано в модулі Graph (промальовування ліній, відображення тексту в графічному режимі, установка потрібного видеорежима і шрифту, зміна аттрибута ліній і тексту). Модуль Drivers (точніше об'єкт TEvent) використовувався із метою спрощення обробки подій, вчинили з клавиатуры.

Вимоги до системи :

Наявність ОС MS-DOS версії 3. xx і від чи OS/2 Warp 3.0 & FullScreen DOS. Програма не вимагає ні високу швидкість процесора, ні великого об'єму оперативної пам’яті і слабким місця на диску, ні наявності маніпулятора типу Mouse. У поєднанні з виконуваним файлом перебуває файл зі шрифтом TRIP. CHR, необхідний коректною роботи программы.

2 Використовувані технічні средства.

При налагодженні програми, був використаний комп’ютер типу IBM Pentium 120 Triton & PipeLine Cashe 256 / 16Mb RAM, до складу якої входить: монітор 17'' з адаптером SVGA S3TRIO Trio64 764; клавіатура 105 клавіш; FDD [pic] і [pic]; HDD Cuantum FireBall 1.08Gb;

3 Інструкція по выполнению.

Для виклику програми необхідно переконатися, що файли CURSPROJ. EXE і TRIP. CHR перебувають у однієї директорії. Після перевірки необхідно запустити файл CURSPROJ. EXE чи середовищі Паскаля откомполировать файл CURSPROJ. PAS (в коплекте додається файл EGAVGA. OBJ, необхідний линковки в основну програму файла EGAVGA. BGI). Інтерфейс програми представлений англійській через тимчасового отсутсвия додаткових російських шрифтов.

Можливі дії процесі виконання программы:

— остановить/продолжить обертання треугольника.

— змінити напрям вращения.

— з допомогою клавіш вверх/вниз можна змінювати швидкість обертання треугольника.

— вихід із программы.

Програма CURSPROJ. PAS має розмір 3772 байт чи 120 строк.

Що Здійснюється файл CURSPROJ. EXE має розмір 24 348 байт.

4 Вхідні і вихідні данные.

Вхідними для даної програми є двомірний масив, у якому координати вершин рівностороннього треугольника.

Вихідних даних: Візуальне відображення обертання трикутника і поточних координат кожної з вершин.

5 Випробування программы.

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

Заключение

.

Ця курсова робота є програмний продукт, готовий до роботи у графічному режимі. Програмний продукт написано на сучасному мові Turbo-Pascal, який дозволив найбільш просто зміг уявити цю работу.

У виконання курсового проекту я ознайомився з нові прийоми програмування і особливостями мови Turbo-Pascal що дозволило розробити даний програмний продукт.

Список літератури |1 | Епанешников А. М., Епанешников В. А., Програмування серед TURBO| | |PASCAL 7.0.-Москва:"Диалог-МИФИ", 1995 | |2 |Зуєв Е.А., Система програмування Turbo Pascal.-Москва: СП | | |"Диалог", 1992 | |3.|Довгаль С.І., Сбинтев А.І., Персональые ЕОМ: TURBO PASCAL V7.0, | | |Обектное программирование.-Киев: «Двгаль», 1995 |.

Приложение 1.

Program CursProj; Uses graph, crt, Drivers; const Ctr: Array [1. 2, 1. 3] of Integer =((-77,0, 77),.

(-50,91,-50)); Var x_c, y_c: Integer;

Time2W: Byte;

Event: TEvent; grDriver: Integer; grMode: Integer;

ErrCode: Integer; xn, yn, a: Integer;

Angle: Real;

K: ShortInt;

Procedure VgaDrv; external; {$L EGAVGA. OBJ }.

procedure SetCenter (x_nc, y_nc: integer); begin x_c := x_nc; y_c := y_nc; end;

Function Str2(Num:Integer):String; Type P. S = String; var P: ^P.S; Begin New (P); Str (Num, P^); Str2 := P^; Dispose (P); End;

procedure draw (color:integer); begin.

SetColor (Color);

Line (x_c+ctr[1][1], y_c+ctr[2][1], x_c+ctr[1][2], y_c+ctr[2][2]);

Line (x_c+ctr[1][2], y_c+ctr[2][2], x_c+ctr[1][3], y_c+ctr[2][3]);

Line (x_c+ctr[1][3], y_c+ctr[2][3], x_c+ctr[1][1], y_c+ctr[2][1]); end;

procedure DrawText (XX, YY: Integer; Text: String); Begin SetColor (Black); OutTextXY (XX, YY, «(((«); SetColor (White); OutTextXY (XX, YY, Text); End;

procedure ShowD; Begin.

GetKeyEvent (Event); If Event. What = evKeyDown Then.

Case Event. KeyCode of kbUp: Begin if Time2W > 2 Then Time2W := Time2W — 1;

SetColor (Black);

OutTextXY (85,10, «(((((((((((((«);

SetColor (White);

OutTextXY (90,10,Str2(100-Time2W));

End; kbDown: Begin if Time2W < 100 Then Time2W := Time2W + 1;

SetColor (Black);

OutTextXY (85,10, «(((((((((((«);

SetColor (White);

OutTextXY (90,10,Str2(102-Time2W));

End; kbEnter: Begin.

SetColor (LightRed);

OutTextXY (1,30, «Freeze »);

ReadKey;

SetColor (Black);

OutTextXY (1,30, «(((((((((((((«);

End; kbTab: Begin.

K := -K;

End;

End;

Angle := 0.1;

Draw (White);

Delay (Time2W);

Draw (Black); for A := 1 to 3 do begin.

Xn := Round (ctr[1][a] * cos (Angle) + K * ctr[2][a] * sin (Angle));

Yn := Round (-K * ctr[1][a] * sin (Angle) + ctr[2][a] * cos (Angle));

Ctr[1][a] := Xn; Ctr[2][a] := Yn; end;

Draw (White);

DrawText (105,60,Str2(x_c+ctr[1][1]));

DrawText (105,75,Str2(x_c+ctr[2][1]));

DrawText (105,90,Str2(x_c+ctr[1][2]));

DrawText (155,60,Str2(x_c+ctr[2][2]));

DrawText (155,75,Str2(x_c+ctr[1][3]));

DrawText (155,90,Str2(x_c+ctr[2][3])); end;

begin RegisterBgiDriver (@vgaDrv); K:=-1; Time2W := 15; SetCenter (320,240); Angle := 0.1; grDriver := Detect; grMode:=VGAHi; {video mode VGA 640×480×16colors} InitGraph (grDriver, grMode, «»); ErrCode := GraphResult; if ErrCode = grOk then begin OutTextXY (1,10, «Speed: «+Str2(100-Time2W)); OutTextXY (10,60, «Corn. 1 X Y »); OutTextXY (10,75, «Corn. 2 X Y »); OutTextXY (10,90, «Corn. 3 X Y »); SetTextStyle (TriplexFont, HorizDir, 2); OutTextXY (10,425, «((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((«); OutTextXY (10,415, «((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((«); SetColor (Black); OutTextXY (10,420, «-ExitFreeze «+.

" -SpeedDirection "); SetColor (LightRed); OutTextXY (10,420, «ESC Enter Up/Down TAB »); SetTextStyle (DefaultFont, HorizDir, 1);

Repeat ShowD Until Event. KeyCode = kbEsc; CloseGraph; end else Writeln («Graphics error: », GraphErrorMsg (ErrCode)); end.

Показати весь текст
Заповнити форму поточною роботою