О проекте
|
Тема: Цикл с предусловием в графике.Задача. Построить множество концентрических окружностей (с общим центром), удовлетворяющих следующим условиям: - радиус следующей окружности на m меньше предыдущей;
- процесс построения должен завершиться, когда радиус меньшей окружности станет меньшеили равным данному числу а.
Итак, для решения задачи в программе мы должны запросить у пользователя значения переменных m и а, затем инициализировать графический режим и в цикле выполнять построение окружностей, меняя при этом радиус. Для наиболее красочного построения окружностей применим процедуру установки текущего цвета с применением случайных чисел. Program Krugi; Uses Crt, Graph; Var i, m, R, a, DV, DM : integer; Begin ClrScr; Randomize; write (‘Введите шаг изменения радиуса окружностей ‘); readln (m); write (‘Введите радиус большей окружности ‘); readln (R); write (‘Введите радиус меньшей окружности ‘); readln (а); write (‘Введите координаты центра ‘); readln (X, Y); DV:=detect; InitGraph (DV, DM, ‘..\BGI’); SetBkColor (7); while R>=a do begin SetColor (Random(15)); Circle (X, Y, R); R:=R-m; end; readln; CloseGraph; End. |
Примечание. Здесь применена процедура Randomise, которая инициализирует генератор случайных чисел. Значения же случайных чисел можно получить с помощью функции Random (Х), где Х - параметр, указывающий диапазон значений случайного числа. Оно изменяется в пределах [0,Х[. Результат в этом случае будет типа Word. Если параметр Х не задан, то результат буде типа real в пределах [0.0,1.0[. Задачи для самостоятельного решения:- Составить программу, перемещающую отрезок заданной длины слева направо. Имитация движения осуществляется закраской цветом фона линии на предыдущем шаге и построением ее по новой координате Х на следующем шаге.
- Составить программу, перемещающую отрезок заданной длины сверху вниз.
- Составить программу, перемещающую отрезок заданной длины из левого верхнего угла в правый нижний, постепенно его увеличивая.
- Нарисовать веер, состоящий из секторов круга, разукрашенных разным цветом.
- Нарисовать окружность, меняющую цвет заданное число раз.
- Изобразить движущуюся окружность заданного радиуса и цвета.
- Изобразить движение выбранной Вами фигуры.
- Изобразить движение грузовика.
- Используя процедуру очистки экрана, постройте изображение надувающегося мыльного пузыря, который должен лопнуть, когда его радиус станет в 3 раза больше первоначального.
- Нарисуйте последовательность вложенных квадратов с общим центром в центре экрана так, чтобы расстояние между сторонами уменьшалось до тех пор, пока не стало меньше трех точек.
- Составьте программу “Растущая ель”. Рост ели имитируется добавлением к нижнему основанию треугольника (кроне ели) линии на одну точку шире основания как слева, так и справа. К основанию ствола добавляется прямая линия. Программа прекращает работу при увеличении высоты дерева вдвое.
- Составьте программу “Рост лиственного дерева”. Рост кроны изображается добавлением окружностей.
- Нарисуйте действующую модель часов с кукушкой. Часы должны тикать, кукушка куковать.
- Нарисуйте движение маятника.
- Нарисуйте движение фигуры, используя уже имеющийся файл с программой из темы “Операторы графики”.
|