CONST FALSE = 0 CONST TRUE = NOT FALSE DIM col1(15), col2(15), col3(15) RANDOMIZE TIMER SCREEN 12 FOR a = 0 TO 14 col3(a) = a * 4 col2(a) = 30 + a * 2 col1(a) = a * 3 PALETTE a, col1(a) + col2(a) * 256 + col3(a) * 256 ^ 2 NEXT a PALETTE 15, 256 * 10 p = -.122: q = .5 'ritoccate qui se volete zoomare: p: parte reale; q: parte complessa pmin = -2.25: qmin = -1.5 pmax = .75: qmax = 1.5 m = 400 'quadrato del raggio oltre il quale si considera divergente r = 0 dp = 0: dq = 0: p0 = 0: q0 = 0: x = 0: y = 0 i = 0: j = 0: k = 0 'ritoccate qui se volete immagini pił piccole: larghezza = 640 altezza = 480 CLS dp = (pmax - pmin) / (larghezza) dq = (qmax - qmin) / (altezza) FOR i = 0 TO larghezza STEP 1 FOR j = 0 TO altezza STEP 1 x = pmin + dp * i y = qmin + dq * j 'questa riga fa s che venga l'insieme di Mandelbrot cx = x: cy = y 'se invece, al posto di x e y mettete dei numeri, ottenete 'insiemi di Julia, ad esempio: 'cx = -1.25: cy = 0 k = 0 p0 = x: q0 = y DO p = p0 * p0 - q0 * q0 + cx q = 2 * p0 * q0 + cy k = k + 1 'tutte queste righe altro non sono p0 = p 'che x=x^2+c con x, c complessi q0 = q r = p * p + q * q 'modulo del complesso LOOP WHILE ((r <= m) AND (k < 15 * 4 * 4)) kkk = k \ 15 IF kkk MOD 2 = 0 THEN kk = k MOD 15 ELSE kk = (59 - k) MOD 15 IF kk < 0 THEN kk = 0 IF k >= 15 * 4 * 4 THEN kk = 15 PSET (i, j), kk aer$ = INKEY$ IF aer$ = CHR$(27) THEN END NEXT j NEXT i