Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекція #Graph.doc
Скачиваний:
1
Добавлен:
16.09.2019
Размер:
1.81 Mб
Скачать

4. Приклади побудови графічних зображень

Приклад 1. Вивести в центрі екрану коло з радіусом 100, зафарбоване в жовтий колір.

Блок-схема програми:

Текст програми:

Program PR1;

Uses Graph,Crt;

Var grDriver: integer;

grMode: integer;

grPath: string;

Begin

grDriver:=Detect;

grPath:='C:/bp/bgi';

InitGraph(grDriver,grMode,grPath); {ініціалізація графічного режиму}

SetFillStyle(SolidFill,Yellow); {суцільне заповнення області жовтим кольором}

SetColor(Yellow); {колір ліній - жовтий}

PieSlice(GetMaxX div 2+1,GetMaxY div 2+1,0,360,100); {коло}

readln;

CloseGraph; {вихід з графічного режиму}

readln

End.

Приклад 2. Вивести на екран графік та таблицю значень функції .

Текст програми:

Program PR2

Uses Graph,Crt;

Const xp=-10; {початкове значення аргумента x}

xk=10; {кінцеве значення аргумента x}

dx=1; {крок}

Var grDriver:integer;

grMode:integer;

grPath,k,l,s,st:string;

centrX,CY,centrY,mx,my,px,py,p,z,j:integer;

y,x:real;

Begin

grDriver:=Detect;

grPath:='C:/bp/bgi';

InitGraph(grDriver,grMode,grPath);

centrX:=GetMaxX div 2+1; {центр екрану по осі абсцис}

centrY:=GetMaxY div 2 +1; {центр екрану по осі ординат}

Line (centrX,50,centrX,450);

Line(50,centrY,GetMaxX-50,centrY);

OutTextXY(20,1,'x');

OutTextXY(80,1,'y');

Line(0,10,120,10);

Line(50,0,50,225);

Line(0,0,0,225);

Line(0,0,120,0);

Line(120,0,120,225);

Line(0,225,120,225);

Line(centrX,50,centrX+6,60);

Line(centrX,50,centrX-6,60);

Line(590,CentrY,580,CentrY+7);

Line(590,CentrY,580,CentrY-7);

OutTextXY(CentrX+10,50,'y');

OutTextXY(580,CentrY-15,'x');

mx:=20; {множник координат точок графіка по осі абсцис}

my:=10; {множник координат точок графіка по осі ординат}

x:=xp;

z:=-10; {число по осі абсцис, яке далі будемо виводити на екран}

j:=-1; {число по осі ординат, яке далі будемо виводити на екран}

CY:=centrY;

While x<=xk do

begin

y:=-sqr(x)/5; {задана функція}

px:=centrX+round(x*mx); {координати точки графіку по осі абсцис}

py:=centrY-round(y*my); {координати точки графіку по осі ординат}

if x+1<=xk then

Line(px,py,centrX+round((x+dx)*mx),centrY-round(- sqr(x+dx)/5*my));

PutPixel(px,240,red); {вимальовує червоні точки графіку по осі абсцис}

PutPixel(px,py,red); {вимальовує червоні точки графіку по осі ординат}

Str(z,l); {перетворення числа z у символ l }

TextXY(px-7,230,l); {виведення на екран числа z}

Str(y:3:1,s);

OutTextXY(70,15+p,s);

OutTextXY(15,15+p,l);

z:=z+dx;

p:=p+10;

x:=x+dx;

If j>=-20 then

begin

CY:=CY+my;

Str(j,st);

OutTextXY(centrX,CY-3,st);

PutPixel(centrX,CY,red);

j:=j-1;

end;

end;

readln

End.

readln;

CloseGraph;

End.

Результати виконання програми:

Приклад 3. Вивести на екран задану фігуру та визначити площу її бічної поверхні.

Текст програми:

Program PR3

Uses Graph,Crt;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]