BBC BASIC 49 caracteres ASCII
Tamaño de archivo tokenizado 44 bytes
I.n:F.i=0TOn:RECTANGLE0,0,1189>>i/2+.5,841>>i/2N.
Mucho más corto que antes! Siempre me olvido de los operadores de cambio de bits en BBC BASIC para Windows, ya que no estaban disponibles en mi vieja computadora en ese momento.
BBC BASIC 63 caracteres ASCII
Tamaño de archivo tokenizado 58 bytes
Descargar intérprete en http://www.bbcbasic.co.uk/bbcwin/download.html
A%=841C%=1189d=4I.n:F.i=0TOn:RECTANGLE0,0,C%,A%:d!^B%/=2d=-d:N.
Utiliza cero indexación, que prefiero. Por lo tanto, 0 genera el papel para A0, 1 genera A0 dividido en un par de A1, etc.
Es necesario alternar entre reducir a la mitad las coordenadas X e Y, pero hacerlo en una matriz habría costado demasiados bytes. En cambio, uso el hecho de que BBC basic tiene un bloque de variables enteras estáticas A%..Z%
de 4 bytes cada una almacenada en la memoria contigua. Almaceno los valores X e Y en A%
y C%
accedo usando el puntero a %B
modificado por el valor de d, que alterna entre 4
y -4
.
Sin golf
A%=841
C%=1189
d=4
INPUTn
FORi=0TOn
RECTANGLE0,0,C%,A%
d!^B%/=2
d=-d
NEXT
Salida
f[2]
ser unA0
con una línea horizontal que lo divide? es decir, ¿no esf[2]
el caso de prueba en realidadf[3]
?