Por que os pixels da tartaruga iluminam?
Meu programa para criar um conjunto de Mandelbrot tem um erro: sempre que a caneta muda de cor, e a cada 42 pixels a seguir, é mais leve. Isso é, por coincidência, um erro de mandelagem (sim, eu acabei de aprender esse termo), pois é inconsistente para muitos pixels próximos a uma "aresta" (pode realmente ficar embaçado entre a cor que deveria ser e a última), ou Em seguida, o pixel deve ser), mas é sempre o 42º pixel depois dele até a próxima mudança de cor. Estou usando o OSX 10.6.8, PYTHON 2.7. Quando escrevi esse programa na escola, ele funcionou perfeitamente (Windows), e depois enviei para mim mesmo, e trabalhei um pouco mais (principalmente apenas aumentando o tamanho da amostra e, portanto, a imagem) e executei-o. erro. Edição: Meu mal, eu esqueci de mencionar que isso só acontece com o meu programa Mandelbrot, os poucos outros programas de tartarugas que tenho em casa estão bem.
Partes de capturas de tela (para que você não precise esperar para sempre enquanto o programa é executado para ver do que estou falando):
Da minha primeira versão de casa:
Da versão atual (lateral):
Heres o código:
import turtle
import math
turtle.speed(0)
def benoit(onelen):
turtle.left(90)
for x in range(-2*onelen, onelen):
turtle.up()
turtle.goto(x, int(-1.5*onelen)-1)
turtle.down()
for y in range(int(-1.5*onelen)-1, int(1.5*onelen)-1):
z = complex(0,0)
c = complex(x*1.0/onelen,y*1.0/onelen)
for k in range(20):
z = z*z+c
if abs(z) > 2:
g = .2 + .8*(20-k)/20
break
if k == 19:
g = 0
turtle.pencolor(0,g,0)
turtle.forward(1)
benoit(250)
x = raw_input("Press Enter to Exityadayadayada")
EDIT: Uma correção foi sugerida pelo DSM, que gosta desse bug. No entanto, não tenho experiência em editar código-fonte Python, e todos os sublinhados estão me deixando nervoso. Alguém pode me dizer especificamente o que editar e / ou como?