PROGRAM PRG11_8A;
USES GRAPH, CRT; VAR DRIVER, MODE, X, Y, I, T: INTEGER; BEGIN DRIVER:= DETECT; INITGRAPH(DRIVER, MODE, 'C: \BP\BGI'); SETCOLOR(3); SETFILLSTYLE(1, 1); FL00DFILL(1, 4, 1); T:= -4; SETCOLOR(16); FOR I:= 1 TO 300 DO BEGIN T:= T+2; X:= GETMAXX DIV 2 +TRUNC(2*COS(3*T))*I; Y:= GETMAXY DIV 2-TRUNC(2*SIN(3*T))*l; SETFILLSTYLE(1, 10); FILLELLIPSE(X, Y, 20, 20); DELAY(100); END; REPEAT UNTIL KEYPRESSED; CLOSEGRAPH END. Для решения задачи: - формируем тело программы и описываем переменные; - инициируем модуль GRAPH; - устанавливаем начальное значения угла поворота, цвет заливки кругов и цвет фона; - организуем цикл, в котором располагаем центры кругов по разворачивающейся спирали, вычисляя их координаты с помощью уравнения окружности; - фиксируем рисунок до тех пор, пока не будет нажата любая клавиша. Переменные: X, Y - координаты центра очередного маленького круга; I - переменная цикла; Т - угол поворота; DRIVER - тип графического драйвера; MODE - режим работы графического адаптера. PROGRAM PRG11_8B; USES GRAPH, CRT; VAR DRIVER, MODE, X, Y, I, T: INTEGER; BEGIN DRIVER:= DETECT; INITGRAPH(DRIVER, MODE, 'C: \BP\BGI'); SETCOLOR(3); SETFILLSTYLE(1, 1); FLOODFILL(1, 4, 1); T:= -4; SETCOLOR(16); FOR I:= 1 TO 150 DO BEGIN T:= T+2; X:= GETMAXX DIV 2 +TRUNC(2*I*COS(T/10)); Y:= GETMAXY DIV 2-TRUNC(2*l* SIN(T/10)); SETFILLSTYLE(1, 10); FILLELLIPSE(X, Y, 20, 20); DELAY(100); END; REPEAT UNTIL KEYPRESSED; CLOSEGRAPH END.
Для решения задачи: - формируем тело программы и описываем переменные; - инициируем модуль GRAPH; - устанавливаем начальное значения угла поворота, цвет заливки кругов и цвет фона; - организуем цикл, в котором располагаем центры кругов по разворачивающейся спирали, вычисляя их координаты с помощью уравнения окружности; - фиксируем рисунок до тех пор, пока не будет нажата любая клавиша. Переменные: X, Y - координаты центра очередного маленького круга; I - переменная цикла; Т - угол поворота; DRIVER - тип графического драйвера; MODE - режим работы графического адаптера.
Задача 11.9 Построить семейство одинаковых окружностей, центры которых лежат на вертикально вращающемся отрезке, верхний конец которого закреплен.
|