вот программа по множеству Жюлиа (для z2+c). что в ней нужно исправить, чтоб она работала для z2-2?
uses GraphABC; type TComplex = record X,Y : Real; end; const iter = 50; max = 16; var z, t, c : TComplex; x, y, n : Integer; mx, my : Integer; begin Randomize; Mx := windowwidth div 2; My := windowheight div 2; for y := -my to my do for x := -mx to mx do begin n := 0; z.x := x * 0.005; z.y := y * 0.005; c.x := 0.11; c.y := -0.66; while (sqr(z.x) + sqr(z.y) < max) and (n < iter) do begin t := z; z.x := sqr(t.x) - sqr(t.y) + c.x; z.y := 2*t.x*t.y + c.y; Inc(n); end; if n < iter then SetPixel(mx + x,my + y,clBlack) else SetPixel(mx + x,my + y,RGB(10*(16 - n mod 16),60*(16 - n mod 16),140*(16 - n mod 16))); end; end.
OCTAGRAM
8.02.2017 2:14
Думаю, это здесь
c.x := 0.11; c.y := -0.66;
valerianka97
9.02.2017 0:41
Помогите пожалуйста переделать программу, написанную для z²-2 на программу для функции z²+0,1+0,1i
uses GraphABC; type TComplex = record X,Y : Real; end; const iter = 50; max = 16; var z, t, c : TComplex; x, y, n : Integer; mx, my : Integer; begin Randomize; Mx := windowwidth div 2; My := windowheight div 2; for y := -my to my do for x := -mx to mx do begin n := 0; z.x := x * 0.005; z.y := y * 0.005; c.x := -2; c.y := 0; while (sqr(z.x) + sqr(z.y) < max) and (n < iter) do begin t := z; z.x := sqr(t.x) - sqr(t.y) + c.x; z.y := 2*t.x*t.y + c.y; Inc(n); end; //цвета подбирайте какие нравятся if n < iter then SetPixel(mx + x,my + y,clBlack) else SetPixel(mx + x,my + y,RGB(10*(16 - n mod 16),60*(16 - n mod 16),140*(16 - n mod 16))); end; end.
Федосеев Павел
9.02.2017 12:55
Замените строки
c.x := -2; c.y := 0;
на
c.x := 0.1; c.y := 0.1;
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.