Построить фрактальный ковер Серпинского Термин: Фрактал (лат. fractus — дробленый) — термин, означающий геометрическую фигуру, обладающую свойством самоподобия, то есть составленную из нескольких частей, каждая из которых подобна всей фигуре целиком. В более широком смысле под фракталами понимают множества точек в евклидовом пространстве, имеющие дробную метрическую размерность (в смысле Минковского или Хаусдорфа), либо метрическую размерность, строго большую топологической. Материал взят из Википедии — свободной энциклопедии: Алгоритм(рекурсивный): #include<stdio.h> #include<conio.h> #include<graphics.h> #include<stdlib.h> #include<math.h> #include<time.h> /*прототип функции*/ void kov(double A,double B,double C,double D,double n); int main(){ /*инициализация грфики*/ int gdriver=DETECT,gmode; initgraph(&gdriver,&gmode,""); /*применение цвета к rectangle*/ setcolor(10); /*функиция рисует прямоугольник*/ rectangle(90, 10, 550, 470); /*вызов функции kov*/ kov(90, 10, 550, 470, 4); getch(); return 0; } /*рекурсивная */ void kov(double A,double B,double C,double D,double n) { double A1, B1, C1, D1; if(n > 0){ A1 = 2 * A / 3 + C / 3; C1 = A / 3 + 2 * C / 3; B1 = 2 * B / 3 + D / 3; D1 = B / 3 + 2 * D / 3; rectangle (A1, B1, C1, D1); /*kov вызываеться рекурсивно*/ kov(A, B, A1, B1, n-1); kov(A1, B, C1, B1, n-1); kov(C1, B, C, B1, n-1); kov(A, B1, A1, D1, n-1); kov(C1, B1, C, D1, n-1); kov(A, D1, A1, D, n-1); kov(A1, D1, C1, D, n-1); kov(C1, D1, C, D, n-1); } }
Ключевые слова:
Ковер Серпинского (Фрактальный). Фрактал. Фрактальная графика
|
|||||||