Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

для т

.pdf
Скачиваний:
8
Добавлен:
14.05.2015
Размер:
557.02 Кб
Скачать

программирования очень часто определяется набором инструментов программиста (язык программирования и операционная система).Парадигма программирования представляет (и определяет) то, как программист видит выполнение программы. Например, в объектноориентированном программировании программист рассматривает программу как набор взаимодействующих объектов, тогда как в функциональном программировании программа представляется в виде цепочки вычисления функций.Приверженн ость определённого человека какой-то одной парадигме иногда носит настолько сильный характер, что споры о преимуществах и недостатках различных парадигм относятся в околокомпьютерных кругах к разряду так называемых «религиозных» войн.История термина. Термин «парадигма

программирования» впервые применил Роберт Флойд в своей лекции лауреата премии Тьюринга.Флойд отме чает, что в программировании можно наблюдать явление, подобное парадигмам Куна, но, в отличие от них, парадигмы программирования не являются взаимоисключающим и: Если прогресс искусства программирования в целом требует постоянного изобретения и усовершенствования парадигм, то совершенствование искусства отдельного программиста требует, чтобы он расширял свой репертуар парадигм. Таким образом, по мнению Роберта Флойда, в отличие от парадигм в научном мире, описанных Куном, парадигмы программирования могут сочетаться, обогащая инструментарий программиста. Основные модели программирования :Императивное программирование, Функциональное программирование,

Логическое программирование,О бъектноориентированное программирование.П

одходы и приёмы:

Структурное программирование, Процедурное программирование,Д екларативное программирование, Обобщённое программирование,П орождающее программирование,Ас пектноориентированное программирование,Ре курсия,Автоматное программирование,С обытийноориентированное программирование,К омпонентноориентированное программирование Императивное программирование — это парадигма программирования, которая, в отличие от декларативного программирования, описывает процесс вычисления в виде инструкций, изменяющих состояние программы. Императивная программа очень похожа на приказы, выражаемые повелительным наклонением в естественных языках,

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

значений функций в математическом понимании последних.Транслято ры и их виды. для перевода программы с языка программирования на язык машинных кодов используют специальные программы – трансляторы. Существует три вида транслятора: интерпр етаторы (это транслятор, который производит пооператорную обработку и выполнение исходного кода программы), компиля торы (преобразует всю программу в модуль на машинном языке, после чего программа записывается в память компьютера и лишь потом исполняется) и ассемблеры (перевод

ят программу, записанную на языке ассемблера, в программу на машинном языке).

39. Инициализация графического режима. Множество графических процедур и функций среды программирования Pascal собраны в модуле Graph . Для подключения библиотеки графических функций

ипроцедур

необходимо подключить модуль к вашей программе строкой Uses graph ; Взаимодействие программы и видеосистемы в графических режимах обеспечивают драйверы. Драйверы собраны в файлах, имеющих расширение BGI : CGA . BGI , EGAVGA . BGI , HERC . BGI , IBM 8514. BGI , ATT . BGI , PC 3270. BGI

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

Графические

возможности конкретного адаптера определяются разрешением экрана, т.е. общим количеством пикселей, а также количеством цветов. Кроме того, многие адаптеры могут работать с несколькими графическими страницами. Для инициализации графического режима используется процедура: InitGraph(var Driver, Mode: integer; Path:string); Где Driver

– переменная типа integer , определяющая тип графического драйвера; Mode – переменная того же типа, задающая режим работы графического адаптера; Path – выражение типа string , содержащее путь доступа к файлу драйвера. Установка цвета. Драйвер EGAVGA . BGI позволяет использовать 16 цветов. Каждому цвету присвоен код – целое число, которое используется процедурами и функциями.

Black 0, Blue 1 ,Green 2 , Cyan 3 , Red 4 ,Magenta 5 ,Brown

6 ,LightGray7 , DarkGray 8 ,LightBlue 9 ,LightGreen 10 ,LightCyan 11, LightRed12, LightMagenta 13 , Yellow 14, White 15

Цвет выводимых в графическом режиме на экран линий и символов можно задать процедурой SetColor( color : word ); аргумент которой – целое число от 0 до 15 или имя одной из приведенных выше констант. Установка цвета действует на те линии и тексты, которые выводятся после ее вызова, но не меняет цвет линий и символов, выведенных на экран ранее. Таким образом, процедуру SetColor следует вызывать каждый раз перед выбором нового цвета. Если цвет не установлен, то используется белый цвет. Установка цвета фона. Чтобы установить цвет фона для всего экрана, используется процедура: SetBkColor( color : word ); Если процедура установки

цвета фона не вызвана, экран будет черным. Установка указателя вывода Процедура MoveTo ( x, y: integer) перемещает указатель в точку с координатами x, y Процедура MoveRel ( dx, dy: integer) перемещает указатель на dx, dy пикселей относительно последнего положения. Функции GetX и GetY возвращают координаты x, y указателя вывода. Установка точки Процедура PutPixel ( x, y: integer; color: word) устанавливает точку с координатами ( x, y) и закрашивает ее указанным цветом color. Функция GetPixel ( x, y: integer): word возвращает значение цвета, в который окрашена точка с координатами ( x, y). Рисование линий Процедура Line ( x1, y1, x2, y2: integer) вычерчивает линию между двумя точками экрана с координатами ( x1, y1) и ( x2, y2). Процедура LineTo ( x, y: integer) вычерчивает линию от последнего положения указателя до точки с

координатами ( x, y). Окружность, эллипс, дуга, сектор Процедура Circle ( x, y: integer; r: word) вычерчивает окружность радиуса r

сцентром в точке с координатами ( x, y). Процедура Arc ( x, y, ugol_ begin, ugol_ end, r: integer) вычерчивает дугу окружности радиуса r

сцентром в точке с координатами ( x, y). Параметры ugol_ begin и ugol_ end задают угловые координаты начала и конца дуги. Отсчет углов ведется против часовой стрелки. Значения угловых координат задается в градусах. Процедура Ellips ( x, y: integer; ugol_ begin, ugol_ end, rx, ry: word) вычерчивает эллипс или дугу эллипса с центром в точке с координатами ( x, y). Параметры ugol_ begin и ugol_ end задают угловые координаты начала и конца дуги. Параметры rx и ry определяют горизонтальный и вертикальный радиусы эллипса. Процедура PieSlice ( x, y: integer; ugol_ begin, ugol_ end, r: word) вычерчивает

сектор окружности радиуса r с центром в точке с координатами ( x, y). Параметры ugol_ begin и ugol_ end задают угловые координаты начала и конца сектора. Сектор может быть закрашен в соответствии со стилем, заданным процедурой SetFillStyle (о ней чуть позже). Процедура Sector ( x, y: integer; ugol_ begin, ugol_ end, rx, ry: word) вычерчивает сектор эллипса с центром в точке с координатами ( x, y) и горизонтальным радиусом rx, вертикальным - ry. Параметры ugol_ begin и ugol_ end задают угловые координаты начала и конца сектора. Сектор может быть закрашен в соответствии со стилем, заданным процедурой SetFillStyle. Прямоугольник; закрашенный прямоугольник; параллелепипед Процедура Rectangle ( x1, y1, x2, y2: integer) вычерчивает контур прямоугольника. Параметры x1, y1 задают положение левого верхнего угла,