Нарисовать фигуру "Снежинка" по следующему алгоритму: из одной точки – центра вырастают k кристалликов-отрезков длины r, свободный конец каждого из которых служит центром новой снежинки с длиной кристаллика-отрезка, в три раза меньшей r. Указанный процесс продолжается n раз. Ниже изображены снежинки при n=1, 2, 3, и k=6:
Решение.
Введем рекурсивную процедуру Snow, параметрами которой будут координаты центров снежинок x0, y0, радиус-длина r и глубина рекурсии n. Для размещения рисунка в области вывода, найдем начальный радиус по формуле: полагая dim=240, k=1/3. Получим: r=160/(1-1/3n). Чтобы величины cos(I*t) и sin(I*t) не вычислялись в цикле многократно (цикл содержится в теле рекурсивной процедуры), найдем указанные вещественные значения в процедуре Init и запомним их в массивах C и S. Это значительно ускорит работу программы.