SETFILLSTYLE(1, 10);
FILLELLIPSE(X, Y, 20, 20); DELAY(100); END; REPEAT UNTIL KEYPRESSED; CLOSEGRAPH END. Для решения задачи: - формируем тело программы и описываем переменные; - инициируем модуль GRAPH; - устанавливаем начальное значения радиуса, координаты центра; - организуем цикл, в котором закрашиваем круги с все большим радиусом до тех пор, пока не будет нажата любая клавиша. Переменные: X, Y - координаты центра очередного круга; Х0 - смещение по горизонтали; I - переменная цикла; Т - угол поворота; DRIVER - тип графического драйвера; MODE - режим работы графического адаптера. Задача 11.11 Построить семейство разноцветных окружностей, радиусы которых увеличиваются. PROGRAM PRG11J1; USES GRAPH, CRT; VAR DRIVER, MODE, X, Y, R: INTEGER; BEGIN DRIVER:= DETECT; INITGRAPH(DRIVER, MODE, 'C: \BP\BGI'); WHILE NOT KEYPRESSED DO BEGIN X:= GETMAXX DIV 2; Y:= GETMAXY DIV 2; R:= 20; SETFILLSTYLE(1, 2); FLOODFILL(1, 1, 2); REPEAT SETCOLOR(SUCC(RANDOM(16))); SETFILLSTYLE(1, SUCC(RANDOM(16))); FILLELLIPSE(X, Y, R, R); DELAY(IOOO); R:= R+10; UNTIL (X+R> = GETMAXX)OR(Y+R> = GETMAXY) OR (KEYPRESSED); CLEARDEVICE; END; CLOSEGRAPH END. Для решения задачи: - формируем тело программы и описываем переменные; - инициируем модуль GRAPH; - организуем цикл до тех пор, пока не будет нажата любая клавиша; - устанавливаем начачьные значения центров кругов, цвет заливки кругов и цвет фона; - организуем вложенный цикл, в котором чередуются увеличивающиеся разноцветные круги до тех пор, пока они не достигнут наибольших размеров; - затем рост окружностей начинается вновь; - после нажатия любой клавиши закрываем графический режим. Переменные: X, Y - координаты центра очередного круга; R - увеличивающийся радиус; DRIVER - тип графического драйвера; MODE - режим работы графического адаптера. Задача 11.12 Построить движущиеся изображения двух прямоугольников и круга, на которых помещены слова из фразы "КТО СКАЗАЛ МЯУ?"
|