Défi
Je suis récemment entré dans les ordinateurs 8 bits et suis fasciné par leur fonctionnement et celui des autres; ainsi l'objectif de ce code golf, est de répliquer une partie du Woz Monitor, conçu par Steve Wozniak pour l'Apple I.
Vous devez stocker un tableau de 22 valeurs hexadécimales avec une largeur de deux octets (valeur minimale 10 $ , valeur maximale $ FF ), puis prendre n- quantité d'entrées. (Normalement deux; les langues comme Brainfuck peuvent avoir du mal).
Les entrées feront référence à l'endroit où commencer à imprimer dans le tableau et où s'arrêter; une entrée avec un comportement défini aura sa valeur de départ inférieure ou égale à la valeur de fin. Votre programme doit alors être capable d'imprimer toutes les valeurs hexadécimales comprises entre et incluant les hexadécimaux entrés.
Un exemple de ceci:
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
Maintenant, la partie intéressante de cet exercice est que vous pouvez utiliser ce que vous voulez pour vérifier les limites de l'entrée des utilisateurs. Entrées de personne hello
et votre programme a un comportement indéfini? Il quitte sans préavis? Ils sont tous les deux valides.
Les seules règles sont:
1. Vous devez inclure les valeurs des 22 valeurs hexadécimales dans le cadre de votre programme avant qu'il ne démarre (vous ne pouvez pas demander de saisie à l'utilisateur).
2. La sortie des valeurs hexadécimales doit suivre le format exact:
00 FF 00 FF 00
les espaces de fin, les tabulations ou les lignes sont OK. Les personnages ne le sont pas.
3. Le programme n'a pas à demander les entrées avec un message. Laissez le "message" vide si vous le souhaitez. L'utilisateur doit cependant saisir les limites hexadécimales.
4. Comme les valeurs des 22 hexadécimaux sont à vous de décider, vous devez créer un programme qui récupère réellement les valeurs du stockage, au lieu d' imiter un programme en imprimant simplement les valeurs. (comme une liste de 00 $ ).
5. n-quantité d'entrées, se réfère à la quantité d'entrées requises pour que la langue de votre choix reconnaisse une largeur hexadécimale de deux octets. par exemple. (Brainfuck nécessitera deux entrées par hex, ce qui en fait quatre pour les deux).
N'hésitez pas à commenter si vous avez besoin d'éclaircissements.
Il s'agit du code golf, donc la réponse la plus courte en nombre d'octets est le gagnant.
Classement
Voici un extrait de classement générant un courtoisie de Martin Ender .
Pour vous assurer que votre réponse s'affiche, veuillez commencer votre réponse avec un titre, en utilisant le modèle Markdown suivant:
# Language Name, N bytes
où N
est la taille de votre soumission. Si vous améliorez votre score, vous pouvez conserver les anciens scores dans le titre, en les barrant. Par exemple:
# Ruby, <s>104</s> <s>101</s> 96 bytes
n
parce que Brainfuck ne peut pas accepter une chaîne de 2 caractères, vous devez saisir le premier octet, puis le second pour la première valeur, puis recommencer pour la deuxième valeur, 4 entrées au total. Ils peuvent être aussi nombreux que vous le souhaitez.