Desafío
Recientemente me he metido en computadoras de 8 bits y estoy fascinado con el funcionamiento de ellas y otras personas por igual; por lo tanto, el objetivo de este código de golf es replicar una parte del monitor Woz, diseñado por Steve Wozniak para Apple I.
Debe almacenar una matriz de 22 valores hexadecimales con un ancho de dos bytes (valor mínimo $ 10 , valor máximo $ FF ) y luego tomar n-cantidad de entradas. (Normalmente dos; idiomas como Brainfuck podrían tener dificultades).
Las entradas se referirán a dónde en la matriz comenzar a imprimir y dónde parar; una entrada con comportamiento definido tendrá su valor inicial menor o igual al valor final. Su programa debe ser capaz de imprimir cada valor hexadecimal entre, e incluyendo , los hexadecimales ingresados.
Un ejemplo de esto:
Array
00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15
Values
FF F4 B6 D7 40 00 00 A4 F0 00 FF 0D 9C 21 65 C4 02 28 90 E7 D6 A5
input first num:
04
input second num:
14
40 00 00 A4 F0 00 FF 0D 9C 21 65 C4 02 28 90 E7 D6
Ahora, la parte interesante de este ejercicio es que puede usar lo que quiera para verificar los límites de la entrada de los usuarios. ¿Las entradas de personas hello
y su programa tienen un comportamiento indefinido? Se cierra sin previo aviso? Ambos son validos.
Las únicas reglas son:
1. Debe incluir los valores de los 22 valores hexadecimales como parte de su programa antes de que comience (no puede pedirle entradas al usuario).
2. La salida de los valores hexadecimales debe seguir el formato exacto: los
00 FF 00 FF 00
espacios finales, las pestañas o las líneas están bien. Los personajes no lo son.
3. El programa no tiene que pedir las entradas con un mensaje. Deje el "mensaje" en blanco si lo desea. Sin embargo, el usuario debe ingresar los límites hexadecimales.
4. Como con los valores de los 22 hexadecimales, usted debe decidir, debe hacer un programa que realmente recupere los valores del almacenamiento, en lugar de imitar un programa simplemente imprimiendo valores. (como una lista de $ 00 ).
5) n-cantidadp.ej. (Brainfuck requerirá dos entradas por hex, por lo que es cuatro para los dos). de entradas, se refiere a la cantidad de entradas requeridas para su idioma de elección para reconocer un hexadecimal de dos bytes de ancho.
Siéntase libre de comentar si necesita aclaraciones.
Este es el código de golf, por lo que la respuesta más corta en el número de bytes es el ganador.
Tabla de clasificación
Aquí hay una tabla de clasificación que genera fragmentos cortesía de Martin Ender .
Para asegurarse de que su respuesta se muestre, comience con un título, utilizando la siguiente plantilla de Markdown:
# Language Name, N bytes
¿Dónde N
está el tamaño de su envío? Si mejora su puntaje, puede mantener los puntajes antiguos en el título, tachándolos. Por ejemplo:
# Ruby, <s>104</s> <s>101</s> 96 bytes
n
debido a que Brainfuck no puede tomar una cadena de 2 caracteres, necesitará ingresar el primer byte, luego el segundo para el primer valor y luego volver a hacerlo para el segundo valor, 4 entradas en total. Pueden ser tantos como quieras.