--> Spirale d'Ulam Le début de la spirale Xmin = -8 Xmax = 8 Ymin = -8 Ymax = 8 couleur = "rgb(220,220,220)" for(var t = -10; t <= 10 ; t++){ droite([t,-15],[t,15]) droite([-15,t],[15,t]) } trait = 0.01 couleur = noir peinture = "rgba(200,0,0,0.5)" transparence = 0 x = 0 y = 0 rectangle([x,y],1,1) x = 1 transparence = 1 rectangle([x,y],1,1) transparence = 0 sensx = 0 sensy = 1 texte("1",[0.2,-0.6]) texte("2",[1.2,-0.6]) nombre = 2 for(i = 1 ; i < 18; i++){ for(j = 0; j <= Math.floor(i/2) ; j++){ nombre = nombre+1 transparence = 0 if( isPrime(nombre) ){ transparence = 1 } x = x+sensx y = y+sensy rectangle([x,y],1,1) texte(nombre,[x+0.2,y-0.6]) } asensx = sensx asensy = sensy if( asensx == -1 ){ sensx = 0; sensy = -1 } if( asensx == 1 ){ sensx = 0; sensy = 1 } if( asensy == 1 ){ sensy = 0; sensx = -1 } if( asensy == -1 ){ sensy = 0; sensx = 1 } } function isPrime(n){ rep = true; for(var k = 2; k <= Math.sqrt(n); k++){ if(n%k == 0){ rep = false; break; } } return rep } La spirale jusqu'à $40\, 201$ Xmin = -100 Xmax = 100 Ymin = -100 Ymax = 100 couleur = "rgb(220,220,220)" trait = 0.01 couleur = noir peinture = "rgba(255,255,255,0.5)" transparence = 1 x = 0 y = 0 rectangle([x,y],1,1) x = 1 peinture = "rgba(200,0,0,0.5)" transparence = 1 rectangle([x,y],1,1) transparence = 0 sensx = 0 sensy = 1 nombre = 2 for(i = 1 ; i < 400; i++){ for(j = 0; j <= Math.floor(i/2) ; j++){ nombre = nombre+1 transparence = 0 if( isPrime(nombre) ){ peinture = "rgba(200,0,0,0.5)"; transparence = 1 } x = x+sensx y = y+sensy rectangle([x,y],1,1) } asensx = sensx asensy = sensy if( asensx == -1 ){ sensx = 0; sensy = -1 } if( asensx == 1 ){ sensx = 0; sensy = 1 } if( asensy == 1 ){ sensy = 0; sensx = -1 } if( asensy == -1 ){ sensy = 0; sensx = 1 } } function isPrime(n){ rep = true; for(var k = 2; k < Math.sqrt(n); k++){ if(n%k == 0){ rep = false; break; } } return rep }