Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Основные графические процедуры и функции




1) Initgraph(var driver, mode: integer, path: string); - инициализация графического режима.

driver – код графического драйвера (драйвер – программа, управляющая работой адаптера; адаптер – устройство, управляющее работой экрана),

mode – код графического режима,

path – путь к драйверу. Если код драйвера равен нулю, то драйвер выбирается автоматически и устанавливается режим с максимальным разрешением, т.е. для адаптера VGA устанавливается размер экрана 640х480 пикселов и 16 цветов.

Каждая программа, использующая графические процедуры и функции, должна содержать строки:

 

uses graph;

Var dr, reg: integer;

begin

dr:=0; Initgraph(dr, reg, 'c:\program files\tpascal.71\bgi');

{ Driver:= Detect; InitGraph(Driver, Mode, ''); - из справки паскаля}

2) closegraph; -выход из графического режима.

3) cleardevice; - о чистка всего экрана с перемещением курсора в начало координат.

4) setbkcolor(color: word); - установка цвета фона.

5) setcolor(color: word); - установка рисующего цвета.

 

Коды цветов приведены в таблице.

Констан. Код Цвет Константа Код Цвет
Black   Черный Darkgray   Темно-серый
Blue   Синий Lightblue   Светло-синий
Green   Зеленый Lightgreen   Светло-зеленый
Cyan   Голубой Lightcyan   Светло-голубой
Red   Красный Lightred   Бледно-красный
Magenta   Малиновый Lightmagenta   Розовый
Brown   Коричневый Yellow   Желтый
Lightgray   Светло-серый Whiet   Белый
      Blink   Мерцание

 

6) outtextxy(x,y,txt:string); - процедура выводит текст, заданный параметром txt, в точке с координатами x, y. Для вывода значения числовой переменной v необходимо предварительно перевести число в текс процедурой str( v [:w:d]; txt: string ), где w – ширина поля для числа, d – число знаков после запятой, txt – строка результата перевода.

7) getmaxx; getmaxy; - функции, определяющие максимальное количество точек по осям x и y.

8) putpixel(x,y:integer; c: word); – закраска пиксела с координатами x, y цветом c.

9) moveto (x, y: integer); - процедура перемещает указатель в точку с координатами x, y.

10) moverel (dx, dy: integer); - процедура смещает указатель на dx пикселей по оси x и dy пикселей – по y.

11) line(x1,y1,x2,y2:integer); – процедура рисует линию из точки с координатами x1, y1 в точку с координатами x2, y2.

12) lineto(x,y:integer); – процедура рисует линию из точки с текущими координатами в точку с координатами x, y.

13) rectangle(x1,y1,x2,y2:integer); – процедура рисует прямоугольник с координатами левого верхнего угла – x1, y1 и координатами правого нижнего угла – x2, y2.

14) circle(x,y:integer; r: word) – процедура рисует окружность, x, y – координаты центра, r – радиус.

15) arc(x, y, r, a1, a2); - процедура рисует дугу окружности, r – радиус, a1, a2 – углы в гадусах, определяющие начало и конец дуги.

16) setfillstyle(s,c: integer); - процедура задает текущий стиль (s) и цвет(c) заливки. S=1 – сплошная заливка.

17) fillellipse(x,y,rx, ry); - процедура рисует закрашенный эллипс, x, y – координаты центра, rx, ry – горизонтальный и вертикальный радиусы эллипса.

18) bar(x1,y1,x2,y2:integer); – процедура рисует закрашенный прямоугольник с координатами левого верхнего угла – x1, y1 и координатами правого нижнего угла – x2, y2.

 

Пример 1. Отобразить точку красного цвета в центре экрана.

 

Program pr1;

uses graph;

Var dr, reg: integer;

begin

dr:=0; Initgraph(dr, reg, 'c:\program files\tpascal.71\bgi');

{ Driver:= Detect; InitGraph(Driver, Mode, ''); - из справки паскаля}

putpixel(getmaxx div 2, getmaxy div 2, 4);

readln;

end.


Записи

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

Описание записи:

Type

<имя>=record

<список полей>

End;

 

Type

vedom=record

N: integer;

Fio: string [30];

NZ: integer;

OZ: integer;

End;

 

После описания типа «Запись», можно в разделе описания переменных объявлять переменную данного типа. Например, Var a: vedom;

После объявления переменной можно вводить и обрабатывать данные, которые могут быть представлены в виде таблицы. Например, тип Vedom описывает данные таблицы вида:

Fio Nz Oz
  Антонов    

Для всей переменной типа record допустима единственная операция – команда присваивания. Например, b:=a; Обращение к отдельным полям записи осуществляется указанием имени записи и конкретного поля:

a.n:=1;

a.fio:=’Антонов’;

a.nz:=33153;

a.oz:=5;

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

Например, данные о книгах, хранящихся в библиотеке, можно описать с помощью типа ‘Запись’.

Type

Lib=record

IN:string [6];

Avt, nazv, izd: string [30];

Gi: integer;

End;

in avt nazv izd Gi
  Пушкин Евгений Онегин Просвещение  
 

Компонентой записи может быть также запись. В таком случае структура их описания может быть следующей:

Type

student=record

Fio=record

F, I, o: string[20]

End??

Data=record

D, m, g: integer;

End??

End;

 

Var a:student;

a.fio.f:=’Антонов’;

a.data.d:=7;

Обращение к компонентам записей можно упростить, если воспользоваться оператором присоединения with.

with <имя записи> do <оператор>;Например, With a do Writeln(n, fio, nz, oz);

Пример 1. Создайте пользовательский тип данных – запись, описывающий данные человека (Фамилия, Имя, Отчество), опишите в программе массив таких записей, состоящий из пяти элементов. В цикле, при помощи оператора read заполните массив данными ваших товарищей.

Program primer;Type Chelovek=Record Fam: String[15]; Ima: String[15]; Otch: String[15]; End;Var Klass:Array[1..5] Of Chelovek; k:Integer; Begin For k:=1 To 5 Do With Klass[k] Do Begin Writeln('Введите фамилию’); Readln(Fam); Writeln('Введите имя’); Readln(Ima); Writeln('Введите отчество’); Readln(Otch); End; Readln;End.

 


Работа с файлами

 

Файл – это поименованная область на диске, содержащая некоторые данные.

В языке Паскаль допускаются следующие файловые типы:

· типизированные файлы – файлы, состоящие из записей постоянной длины;

· текстовые файлы - файлы, состоящие из записей неопределенной длины;

· нетипизированный файл – файл, представляющий неструктурированный поток байтов.

Объявление файловых переменных:

типизированного файла - <идентификатор>: file of <тип>;

текстового файла - <идентификатор>: text;

нетипизированного файла - <идентификатор>: file;

где <идентификатор> – имя файловой переменной,

<тип> - любой тип данных, за исключением файлового.

 

Для доступа к файлу в программе на языке Паскаль необходимо:

1) определить файловую переменную – логический идентификатор файла;

2) связать эту переменную с конкретным физическим файлом;

3) открыть файл: если для записи, то с помощью процедуры Rewrite, если для чтения – то с помощью Reset;

4) обработать файл (прочитать или записать данные);

закрыть файл с помощью Close.

 






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных