READLN;
PUTIMAGE(LX, LY, SAUCERS, XORPUT);мы выводим изображение на экран и после нажатия любой клавиши стираем его. Можно использовать другие способы вывода изображения на экран, например: NORMALPUT - стирается часть экрана, и на это место выводится изображение; NOTPUT - делает то же самое, но изображение инвертируется; ORPUT - дописывает новое изображение. PROGRAM PRG11_NLOA; USES GRAPH, CRT; VAR DRIVER, MODE, X, Y, R, RX, RY, LX, LY, I, SIZE: INTEGER; SAUCER: POINTER; BEGIN R:=20; X:= R*5; Y:=R*2; DRIVER:= DETECT; INITGRAPH(DRIVER, MODE,'C: \BP\BGI'); SETCOLOR(3); ELLIPSE(X, Y, 0, 360, R, (R DIV 3)+2); ELLIPSES(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); SETFILLSTYLE(1,3); FLOODFILL(X+1, Y+4, 3); LX:= X-R-1; LY:= Y-14; RX:= X+R+1; RY:= Y+R DIV 3+3; SIZE:= IMAGESIZE(LX, LY, RX, RY); GETMEM(SAUCER, SIZE); GETIMAGE(LX, LY, RX, RY, SAUCER^); READLN; PUTIMAGE(LX, LY, SAUCER^, XORPUT); FOR I:= 1 TO 600 DO PUTPIXEL(RANDOM(I), RANDOM(I), I); REPEAT PUTIMAGE(X, Y, SAUCER^, XORPUT); DELAY(150); PUTIMAGE(X, Y, SAUCER^, XORPUT); X:= X+RANDOM(10); Y:= Y+RANDOM(10); UNTIL (KEYPRESSED); READLN; CLOSEGRAPH; END.
Для решения задачи: - формируем тело программы и описываем переменные; - инициируем модуль GRAPH; - рисуем НЛО с помощью двух эллипсов, двух линий и двух маленьких кружочков, держим его на экране, затем стираем изображение процедурой CLEARDEVICE; - определяем размер буфера и помещаем в него изображение; - организуем безусловный цикл по переменной I и рисуем звездное небо; - организуем цикл до тех пор, пока не будет нажата любая клавиша; - в этом цикле помещаем изображение из буфера на экран, держим его на экране, затем стираем изображение; - определяем случайным образом координаты следующего изображения НЛО; - после нажатия любой клавиши закрьшаем графический режим. Переменные: X, Y - случайные координаты; R - радиус; I - переменная цикла; SAUCER - указатель буфера хранения изображения; DRIVER - тип графического драйвера; MODE - режим работы графического адаптера. Задача 11.14 Написать систему ниспадающих меню, которая в зависимости от выбора пользователя выводит на экран круг, квадрат или треугольник.
|