Фрактал Ресслера

122.jpg

Построить фрактал Ресслера.

Для отображения необходимо построить решения следующей системы дифференциальных уравнений:
dx/dt = -y - z
dy/dt = x + ay
dz/dt = b + z(x-c)

#include <graphics.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
double x, y, z, dt, a, b, c, x1, y1, z1;
int x2, y2;
 
int main(void) {
 
   int gdriver = DETECT, gmode, errorcode;
 
   initgraph(&gdriver, &gmode, "");
   x = 3.051522;
   y = 1.582542;
   z = 15.62388;
   dt = 0.0001;
   a = 0.2;
   b = 0.2;
   c = 5.7;
 
 
   setcolor(getmaxcolor());
 
   while (!kbhit()) {
 
      x1 = x + (-y-z)*dt;
      y1 = y + (x+a*y)*dt;
      z1 = z + (b+z*(x-c))*dt;
      x = x1;
      y = y1;
      z = z1;
      putpixel(ceil(19.3*(y - x*0.292893) + 320),
	       ceil(-11*(z + x*0.292893) + 392), WHITE);
   }
 
   getch();
   closegraph();
   return 0;
}

Ключевые слова: 
Фрактал Ресслера
ВложениеРазмер
RESSLER.rar32.06 кб