Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Uch_praktika_-_6_-_grafika.doc
Скачиваний:
2
Добавлен:
19.05.2015
Размер:
127.49 Кб
Скачать

6 Образцы решения задач

  1. Написать программу, которая построит график функции y=x+3

program gr;

uses Graph;

const n=100;

var

d,r,i,y:integer;

begin

d:=Detect;

initgraph(d,r,'');

setbkcolor(black);

setcolor(green);

line(getmaxx div 2,0,getmaxx div 2,getmaxy);

line(0,getmaxy div 2, getmaxx,getmaxy div 2);

for i:=1 to 1000 do begin

y:=-round((i+3)*0.5)+320;

putPixel(i,y,white); end;

readln;

closegraph;

end.

  1. Изобразить летающую тарелку.

uses crt, graph;

const r=20;

pause=50;

var d,m,e,xm,ym,lx,ly,rx,ry,i,size,dx,dy: integer;

x,y,width,height:integer;

saucer:pointer;

label Loop;

begin

d:=detect;

InitGraph(d,m,'c:\tp7\bgi');

x:=r*5; y:=r*2;

xm:=GetMaxX div 8;

ym:=GetMaxY div 8;

SetFillStyle(0,Red);

Ellipse(x,y,0,360,r,r div 3+2);

Ellipse(x,y-4,190,357,r,r div 3);

Line(x+7,y-6,x+10,y-12);

Line(x-7,y-6,x-10,y-12);

Circle(x+10,y-12,2);

Circle(x-10,y-12,2);

FloodFill(x+1,y+4,White);

lx:=x-r-1;

ly:=y-14;

rx:=x+r+1;

ry:=y+r div 3+3;

Width:=rx-lx+1;

Height:=ry-lx+1;

Size:=ImageSize(lx,ly,rx,ry);

GetMem(Saucer,Size);

GetImage(lx,ly,rx,ry,Saucer^);

PutImage(lx,ly,Saucer^,XorPut); {очистка изображения тарелки}

Rectangle(xm,ym,7*xm,7*ym);

SetViewPort(xm+1,ym+1,7*xm+1,7*ym-1,ClipOn);

xm:=6*xm;

ym:=6*ym;

for i:= 1 to 200 do

PutPixel(Random(xm),Random(ym),White);

x:=xm div 2;

y:=ym div 2;

dx:=10;

dy:=10;

Repeat

PutImage(x,y,Saucer^,XorPut);

Delay(pause);

PutImage(x,y,Saucer^,XorPut);

loop:x:=x+dx;

y:=y+dy;

if (x<0)or(x+width+1>xm)or(y<0)or(y+Height+1>ym)

then

begin

x:=x-dx;

y:=y-dy;

dx:=GetMaxX div 10-Random(GetMaxX div 5);

dy:=GetMaxY div 30-Random(GetMaxY div 15);

goto loop

end;

Until KeyPressed;

CloseGraph;

end.

7 Контрольные вопросы

  1. Как называется, и как подключается библиотека графических процедур и функций?

  2. Как инициализируется графический режим?

  3. Как выключается графический режим?

  4. Как изменяются параметры линий рисования?

  5. Опишите процедуру рисования линий.

  6. Опишите процедуры рисования окружности.

  7. Опишите процедуры рисования дуги окружности и дуги эллипса.

  8. Опишите процедуру рисования контура прямоугольника.

  9. Опишите процедуры изменения текущего цвета рисования и текущего цвета фона.

  10. Как изменить (установить) цвет точки экрана.

приложение А

    1. Варианты заданий для выполнения

  1. Построить график указанной функции:

  1. Локон Аньези: (x22)y-a3=0

  2. Кривая, заданная параметрически: x=t2,y=2/3t(3-t2)

  3. Кривая, заданная параметрически: x=4t2,y=3t(t2+1)

  4. Кривая, заданная параметрически: x=t4,y=t2-t5

  5. Кардиоида: (x2+y2)(x2+y2-2ax)-a2y2=0. Воспользуйтесь параметрическим представлением:x=acost(1+cost),y=asint(1+cost), 0≤t≤2.

  6. Улитка Паскаля: (x2-y2-ax)2 - L2 (x2+y2)=0. Воспользуйтесь параметрическим представлением: x=a cos2t +L cos t, y= a cos t sin t+Lsint, 0≤t<2

  7. Полукубическая парабола: a2x3-y2=0. Воспользуйтесь параметрическим представлением:x=t2,y=at3.

  8. Декартов лист: x3 +y3- 3axy=0,a>0. Воспользуйтесь параметрическим представлением: , , 1<|t|<∞, t=tg().

  9. Циссоида: x3+(x-a)y2=0, a>0. Воспользуйтесь параметрическим представлением: , , -∞ < t < +∞.

  10. Строфоида: (x+a)x2+(x-a)y2=0,a>0. Воспользуйтесь параметрическим представлением: , , -∞ < t< +∞.

  11. Составить таблицу значений функции в два столбика на экране и ее график.

Астроида: (x2+y2-r2)3+27r2x2y2=0. Воспользуйтесь параметрическим представлением:

Y=r cos3(t/4)

Y=r sin3 (t/4), t [0, 2]

  1. Y=(x2-4x+3)2

  2. Y=|x2-4x+1|

  3. . Arshx – ареасинус.

  4. y=x(x-3)(x+1)

  5. y=x2(x-2)(x+1)

  6. y=(x-1)2(x+1)4(x-2)3

  7. y=xtgx

Приложение Б

  1. Нарисовать движущуюся ракету при взлете

  2. Изобразить солнце с мерцающими лучами

  3. Нарисовать одуванчик с разлетающимися «пушинками»

  4. Нарисовать забор с падающей первой доской

  5. Изобразить вишенку, которая меняет мимику (улыбка-грусть)

  6. Нарисовать домик, чтобы при нажатии на «А» свет в окне загорался, а потом гаснет при нажатии «В»

  7. Нарисовать снеговика с моргающими глазками

  8. Изобразить целый арбуз, из которого выпадает кусочек

  9. Изобразить летящего комара

  10. Нарисовать картинку: «Робот с двигающимися руками»

  11. Изобразить домик, у которого дверь открывается, если нажать клавишу «enter» и закрывается, если нажать пробел

  12. Нарисовать картинку: «Движущийся автомобиль»

  13. Нарисовать разноцветную ромашку, с меняющимся цветом лепестков

  14. Изобразить смену дня и ночи

  15. Нарисуйте разноцветную бабочку, постоянно меняющую цвета

  16. Изобразить кисть смородины с отпадающими ягодками

  17. Изобразить убывающую луну

  18. Преобразовать белый гриб в мухомор

  19. Изобразить компьютер, на дисплее которого появляется и исчезает надпись «Привет»

  20. Изобразить растущую луну

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