| 16.4.80.	Пример использования подпрограмм модуля GraphВ качестве примера использования ресурсов модуля Graph рассмотрим программу, которая изображает график функции exp(-Ax)*sin(x) при изменении коэффициента А. Пример. 
| program Example29; |  |  
| uses Graph; |  |  
| const ExpBeg =0.1; | {Начальное значение коэффициента показателя экспоненты} |  
| DeltaExp =0.1; | {Приращение коэффициента показателя экспоненты} |  
| var X0, Y0: Word; | {Начало координат} |  
| X, Y: Real; | {Текущие координаты} |  
| i, j.: Word; |  |  
| GraphDriver: Integer; | {Код драйвера графического утройства} |  
| GraphMode: Integer; | {Код графического режима} |  
| Switch: Boolean; | {Переключатель окон} |  
| begin |  |  
| GraphDriver := Detect; | {Автоматическое определение драйвера граф. устройства} |  
| InitGraphCGraphDriver, GraphMode, ''); | {Инициализация графического режима. Драйвер - в текущем каталоге} |  
| if GraphResultogrOk then |  |  
| begin |  |  
| WriteLn('Ошибка при включении графического режима'); |  |  
| Halt |  |  
| end; |  |  
| Х0 := 20; | {Координата в пикселях} |  
| Y0 := GetMaxY div 2; | {Координата в пикселях} |  
| Switch := True; | {Исходное состояние переключателя окон} |  
| for j := 0 to 10 do | {Цикл формирования изображений} |  
| begin |  |  
| SetActivePage(Ord(Switch)); | {Активная страница видеопамяти} |  
| SetBkColor(Blue); | {Цвет фона} |  
| SetColor(White); | {Цвет фигур и текста} |  
| ClearDevice; | {Очистка активной страницы} |  
| Line(X0, 20, X0, GetMaxY - 20); | {Горизонтальная ось} |  
| Line(X0, Y0, GetMaxX - 20, Y0); | {Вертикальная ось} |  
| MoveTo(X0, Y0); | {Начало координат}; |  
| for i := 1 to GetMaxX - 40 do | {Формирование графика} |  
| begin |  |  
| X := i * 4 * Pi / (GetMaxX - 40); |  |  
| Y := Exp(-X * (ExpBeg + DeltaExp * j)) * Sin(X); |  |  
| LineTo(X0 + i,Y0 - Round(Y * 150)) |  |  
| end; |  |  
| SetVisualPage(Ord(Switch)); | {Видимая страница видеопамяти} |  
| Switch := not Switch |  |  
| end; |  |  
| CloseGraph; | {Завершение работы в графическом режиме} |  
| ReadLn |  |  
| end. |  |  
|  |  |  С помощью этой программы на экран выводятся последовательно одиннадцать графиков требуемой функции с изменяющимся коэффициентом А показателя экспоненты. При этом изображение сначала подготавливается на невидимой странице видеопамяти, а затем уже выводится на экран, после чего очередное изображение подготавливается на другой странице. В этой программе используется ряд стандартных процедур и функций модуля Graph (ClearDevice, CloseGraph, GetMaxX, GetMaxY, GraphResult, InitGraph, Line, LineTo, MoveTo, SetActivePage, SetBkColor, SetColor, SetVisualPage) и констант модуля (Blue, Detect, grOk, White). Предусмотрено автоматическое определение драйвера графического устройства и графического режима. 
 
 |