Версия для печати темы
Форум «Всё о Паскале» _ Теоретические вопросы _ множество Мандельброта
Автор: suriv 2.11.2004 18:57
что такое множество Мандельброта?ответьте кому не сложно.
Автор: volvo 2.11.2004 19:16
Про множество Мандельброта можно почитать, например, http://eml.sakh.com/fractal/mandeljulia.html
Автор: UtaH 2.11.2004 19:20
Пусть у нас есть точка на комплексной плоскости. Если точка находится в каком-то пункте z=x+i*y, то следующий пункт будет выбираться по правилу
z'=z^2+c, где с=с1+i*с2 - некоторое фиксированное комплексное число. Значит, новые координаты точки вычисляются по формулам:
x'=x^2-y^2+c1
y'=2xy+c2
Существует область значений параметра с, при которых точки, выходящие из начала координат, будут постоянно вертеться около места "старта". Граница этой области и получила название множества Мандельброта.
Эскизы прикрепленных изображений
Автор: Флогримм 7.11.2004 11:06
Цитата
что такое множество Мандельброта?ответьте кому не сложно
- http://www.yandex.ru/yandsearch?text=%EC%ED%EE%E6%E5%F1%F2%E2%EE+%CC%E0%ED%E4%E5%EB%FC%E1%F0%EE%F2%E0&stype=www
:yes: :D :D
Автор: Altair 7.11.2004 13:03
Флогримм, пожалуйста никогда больше не предлагай в качестве ответа поисковик.... он в 5% случаев только дает нужный ответ...
ЗЫ: у меня где-то есть исходник программы рисующий сие прекрасное меножество
Если надо, поищу...
Автор: UtaH 9.11.2004 8:02
Код
program mandel;
uses CRT, Graph;
const
maxcol = 640;
maxrow = 200;
max_colors = 16;
max_iterations = 512;
max_size = 4;
var
Q : array[0..349] of real;
XMax,YMax,XMin,YMin : real;
P,deltaP,deltaQ,X,Y,Xsquare,Ysquare : real;
i,color,row,col,GraphDriver,GraphMode : integer;
ch : char;
begin
XMax := 1.2;
XMin := -2.0;
YMax := 1.2;
YMin :=-1.2;
GraphDriver := EGA;
GraphMode := EGALo;
InitGraph(GraphDriver,GraphMode,'');
deltaP := (XMax - XMin)/(maxcol);
deltaQ := (YMax - Ymin)/(maxrow);
Q[0] := YMax;
for row := 1 to maxrow do
Q[row] := Q[row-1] - deltaQ;
P := XMin;
for col := 0 to maxcol do
begin
if Keypressed then
exit;
for row := 0 to maxrow do
begin
X := 0.0;
Y := 0.0;
Xsquare := 0.0;
Ysquare := 0.0;
color := 1;
repeat
Xsquare := X*X;
Ysquare := Y*Y;
Y := 2*X*Y + Q[row];
X := Xsquare - Ysquare + P;
inc(color);
until (color>=max_iterations) OR (Xsquare + Ysquare >= max_size);
PutPixel(col,row,(color MOD max_colors));
end;
P := P + deltaP;
end;
ch := ReadKey;
end.
Автор: Romtek 9.11.2004 15:35
http://forum.pascal.net.ru/forum/index.php?showtopic=2913
Автор: Флогримм 15.11.2004 11:00
Достаточно полная информация:
http://algolist.manual.ru/graphics/fracart.php
http://algolist.manual.ru/graphics/mandelbrot.php
Цитата
Флогримм, пожалуйста никогда больше не предлагай в качестве ответа поисковик.... он в 5% случаев только дает нужный ответ...
понял, не дурак, дурак бы не понял :yes:
Автор: Гость 17.02.2006 15:59
Здрасти! Скачал программу рисовнания множества - работет прикрасно! Спасибо!!
Но может кто-нибудь разжует каждую строчку, как эта программа работет??
А еще мне нужно множество Жулиа. (Оно обратно монжеству Мандельброта.) С этим вопросом тоже сюда?
Автор: volvo 17.02.2006 16:06
Сюда загляни:
http://forum.pascal.net.ru/index.php?s=&showtopic=9044&view=findpost&p=60271
Цитата
А еще мне нужно множество Жулиа. (Оно обратно монжеству Мандельброта.)
Вообще-то множество Мандельброта - это
частный случай множества Жюлиа...
Автор: Гость 2.04.2006 14:07
Ладно, Спасибо! Пойду почитаю.
Автор: Гersh 14.04.2006 16:22
А вообще-то, я так понял, что разные люди (в том числе разные программисты) навывают одни и те же вещи по-разному!
Автор: Altair 15.04.2006 2:41
Может ты не так слышишь ? Что именно ты считаешь произносяться по разному ?
Автор: Гersh 28.04.2006 12:27
Например: Алгоритм Сезерленда-Коха, -Кохана, -Коэна и тд.
Я так сразу и не вспомню... Но я очень много примеров встречал разного произношения (перевода) одних и тех же названий (понятий, имен)...
Автор: volvo 28.04.2006 12:32
Это, конечно, напрямую связано с Множеством Мандельброта, правда, Гersh? Хочешь пообсуждать особенности слуха программистов - иди в "Свободное". Здесь - Тематика.
Кстати, чтобы не было разночтений, пиши фамилии так, как они были написаны в оригинале, т.е. по-английски (или по-немецки, фрунцузски, и т.д.)! Вот тогда не будет таких фокусов с транскрипцией...
Автор: Гersh 28.04.2006 13:46
А я тут при чем?
Меня спросили - я ответил. Или мне игнорировать Админа прикажите?
Разумеется это не связано с Мандельбротом! И потому про транскрипции я уже промолчу...
Автор: Bear 25.12.2011 14:31
Цитата(UtaH @ 9.11.2004 4:02)
Код
program mandel;
uses CRT, Graph;
const
maxcol = 640;
maxrow = 200;
max_colors = 16;
max_iterations = 512;
max_size = 4;
var
Q : array[0..349] of real;
XMax,YMax,XMin,YMin : real;
P,deltaP,deltaQ,X,Y,Xsquare,Ysquare : real;
i,color,row,col,GraphDriver,GraphMode : integer;
ch : char;
begin
XMax := 1.2;
XMin := -2.0;
YMax := 1.2;
YMin :=-1.2;
GraphDriver := EGA;
GraphMode := EGALo;
InitGraph(GraphDriver,GraphMode,'');
deltaP := (XMax - XMin)/(maxcol);
deltaQ := (YMax - Ymin)/(maxrow);
Q[0] := YMax;
for row := 1 to maxrow do
Q[row] := Q[row-1] - deltaQ;
P := XMin;
for col := 0 to maxcol do
begin
if Keypressed then
exit;
for row := 0 to maxrow do
begin
X := 0.0;
Y := 0.0;
Xsquare := 0.0;
Ysquare := 0.0;
color := 1;
repeat
Xsquare := X*X;
Ysquare := Y*Y;
Y := 2*X*Y + Q[row];
X := Xsquare - Ysquare + P;
inc(color);
until (color>=max_iterations) OR (Xsquare + Ysquare >= max_size);
PutPixel(col,row,(color MOD max_colors));
end;
P := P + deltaP;
end;
ch := ReadKey;
end.
Можешь коменты добавить где че делается?