Usando UcbLogo para dibujar una espiral de Ulam (una forma de representación de números primos que forma patrones curiosos) esto es lo obtenido. El programa es bastante breve:
hideturtle
make «n 1
make «nprimo 1
make «numeros «numerosprimos.txt
make «lista array 9001
openread numeros
setread numeros
setreadpos 0
for [k 1 9000][make «posicion readword setitem k lista posicion]
to ciclo
for [j 1 i][comprueba make «n n+1 fd 1]
rt 90
for [j 1 i][comprueba make «n n+1 fd 1]
rt 90
end
to comprueba
make «miroprimo item nprimo lista
if [n < miroprimo][penup]
if [n = miroprimo][make «nprimo nprimo+1 pendown arc 360 0 penup]
end
for [i 1 97][ciclo]
close numeros
El programa hace uso de un fichero que contiene los 9592 primos que hay hasta el 100000 (se pueden descargar desde la web disfrutalasmatematicas) y comprueba si el número a dibujar está o no en el fichero. Si está dibuja un punto blanco y si no está no dibuja nada.
Aumentando el tamaño:
Si giramos 90º en sentido del reloj y reflejamos verticalmente podemos comparar con la imagen de Wikipedia (ya que la espiral puede empezarse en cualquier sentido y giro):
Más sobre Logo en nuestra sección del blog.