Repetición: ejercicio de dibujar un cÃrculo fractal
March 26, 2008 – 12:06 amSi pensáis que habéis entendido bien la recursión podéis intentar el ejercicio siguiente.
Ahora os toca a vosotros revisar la recursión. Intentad conseguir mediante el uso de una función recursiva una imagen similar a la siguiente:
Pistas:
-
ellipse(int x, int y, int radioX, int radioY)
permite dibujar una elipse en el punto x, y de anchura radioX y de altura radioY.
e.g. de uso. Para dibujar un cÃrculo en (0,0) de radio 400 usar el comando:
ellipse(0, 0, 400, 400)
Para los más atrevidos, se puede intentar crear la siguiente imagen:
Pistas:
-
boolean x
a cada vez que entramos en la recursión el cÃrculo cambia su relleno de negro a blanco a negro consecutivamente. Es útil definir un parámetro adicional para dibujar el circulo que definirá si el circulo que definiremos es negro o no. Variables de este tipo se llaman boolean
e.g. de uso:
View CodeJAVA 1 2 3 4 5 6 7 8 9 void circuloFractal(int radio, boolean pintaNegro){ // el principio de la función if(pintaNegro){ fill(0); }else{ fill(255); } // el resto de la función }
- para pasar una variable de verdadero a falso y viceversa, podemos hacer uso del operador ! (si, una exclamación delante de la variable basta)
e.g. de uso:
View CodeJAVA 1 2 3 4 5 6 7 8 // Primero definimos una variable boolean con un valor positivo boolean pintaNegro = true; pintaNegro = !pintaNegro; // Ahora la variable pintaNegro tendrá un valor negativo pintaNegro = !pintaNegro; // Y ahora la variable pintaNegro tendrá un valor positivo de nuevo // Esta es la manera de alternar el valor de una variable // que solo puede tener los valores positivo y negativo