Руководитель работы

подпись, инициалы, фамилия

Задание принял к исполнению _________

дата и подпись студента _________________________

Введение

--------------------------------------------------------------------------------3

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

2 Моделирование--------------------------------------------------------5

3 Построение алгоритма-----------------------------------------------6

Программирование------------------------------------------------------------------7

Отладка и тестирование программы---------------------------------------------8

Анализ результатов--------------------------------------------------------------------9

Уточнение модели---------------------------------------------------------------------10

Программа на языке Pascal с комментариями--------------------------------11

4 Руководство пользователя для работы в программе-----------------------16

Заключение----------------------------------------------------------------------------17

Список использованной литературы---------------------------------------------18

Содержание

Постановка задач:

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

2 Моя цель: знать анимационные возможности в программе Паскаль.

Что такое Паскаль?

Паскаль (англ. Pascal) — один из наиболее известных языков программирования[4], используется для обучения программированию в старших классах и на первых курсах вузов, является базой для ряда других языков.

Глоссарий:

Модули - это отдельные файлы, содержащие дополнительные процедуры.

Компью́терная гра́фика (также маши́нная графика) — область деятельности, в которой компьютеры используются в качестве инструмента, как для синтеза (создания) изображений, так и для обработки визуальной информации, полученной из реального мира.

Компью́терная анима́ция — вид мультипликации, создаваемый при помощи компьютера. В отличие от более общего понятия «графика CGI», относящегося как к неподвижным, так и к движущимся изображениям, компьютерная анимация подразумевает только движущиеся.

Процедура — это независимая именованная часть программы, которую после однократного описания можно многократно вызвать по имени из последующих частей программы для выполнения определенных действий.

Функция - это подпрограмма специального вида, которая, кроме получения параметров, выполнения действий и передачи результатов работы через параметры имеет ещё одну особенность— она всегда должна возвращать результат. Вызов функции является, с точки зрения языка программирования, выражением, он может использоваться в других выражениях или в качестве правой части присваивания.

Массив - набор однотипных элементов, расположенных в памяти непосредственно друг за другом, доступ к которым осуществляется по индексам[10], либо по ключу (ассоциативный массив).

Описание данных:

Чтобы подключить модуль CRT к программе нужно использовать служебное слово USES.Далее мы сможем использовать некоторые нужные нам процедуры из этого модуля.

1 Процедура ClrScr от английского Clear Screen- очищает экран.

2 Процедура GotoXY(X, Y: Byte;) -осуществляет переход на указанную переменными X и Y позицию экрана. При этом номер строки - это Y, а номер позиции в строке (короче, номер символа) - это X.

3 Процедура Delay от английского Задержка- выполняет задержку программы на указанное количество миллисекунд.Чтобы замедлить выполнение программы используют эту процедуру.

4 Функция ReadKey: Char-возвращает от своей работы последнюю нажатую клавишу.

5 Функция KeyPressed: Boolean-возвращает TRUE если была нажата клавиша.Это опрос клавиатуры.То есть При опросе нет ожидания и если клавиша сразу не была нажата, то программа продолжает свою работу.

6 Раздел Const - В нем описываются константы, используемые в программе. Далее все понятно на наглядном примере. Так можно описывать и строку и символ и даже массив:

const

S='Here is string.'; { Константа - строка }

A: Array[1..5] of Char = ('a','b','c','d','e'); { Массив }.

Альтернативные версии моей программы.Я находила множество различных аналогов моей программы.Но все таки выбрала только одну альтернативную версию:

Версия №1-

uses crt,graph;

type mas= array [1..500] of Pointtype;

var gd,gm,i,j,k,n: integer;

a:mas;

Begin

randomize;

gd:=0;

initgraph(gd,gm,'');

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

for i:=1 to 500 do

Begin

a[i].x:=random(getmaxX);

a[i].y:=random(getmaxY);

circle(a[i].x,a[i].y,1);

end;

k:=0;n:=0;

Repeat

k:=k+1;

delay(200); {задержка}

setcolor(0); {рисуем его цветом фона-стираем}

for i:=1 to 500 do

circle(a[i].x,a[i].y,1);

{сдвигаем все точки по оси Х-наклон и оси У-вниз}

for i:=1 to 500 do

Begin

if a[i].y>getmaxY-n-10 then a[i].y:=1

else a[i].y:=a[i].y+3;

if a[i].x<0 then a[i].x:=getmaxX

else a[i].x:=a[i].x-1;

end;

setcolor(15); {снова рисуем белым цветом} for i:=1 to 500 do circle(a[i].x,a[i].y,1); {внизу рисуем выпавший снег линиями} if k mod 20=0 then begin n:=n+1; line(0,getmaxY-n,getmaxX,getmaxY-n); end; until keypressed; {повторяем до нажатия любой клавиши} readln end.

В этой версий автор использовал не только модуль Crt но и модуль Graph.К тому же автор использовал процедуру Initgraph.Что бы менять линии цветов использовалась Setcolor,а для того чтобы рисовать линии кругами написал и графическую процедуру Circle;


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: