Basics > Structure > Recursion
final int maxLivello=7; int x, y; int raggio; void setup() { size(500, 500); background(255); colorMode(RGB, 1); noStroke(); smooth(); ellipseMode(RADIUS); x=width/2; y=height/2; raggio=width/2-2; noLoop(); } void draw() { disegnaCerchio(x, raggio, maxLivello); } void disegnaCerchio(int x, int raggio, int livello) { float tono=livello/10.0; fill(0.0, tono, tono); ellipse(x, y, raggio, raggio); if(livello > 1) { raggio=raggio/2; livello--; disegnaCerchio(x-raggio, raggio, livello); disegnaCerchio(x+raggio, raggio, livello); } }