Soyez sûr de voir l'autre défi, inverser la carte de caractères ASCII !
Le jeu de caractères ASCII (American Standard Code for Information Interchange) est la norme de codage de caractères la plus utilisée. Les codes ASCII représentent le texte des ordinateurs, des équipements de télécommunications et d'autres appareils.
Défi
Votre défi consiste à imprimer un mappage du jeu de caractères ASCII lorsque l'utilisateur les saisit. GIF:
Une fois que l'utilisateur a saisi chaque caractère ASCII, la sortie doit ressembler à ceci:
Cartographie
Chaque caractère a une position assignée sur une grille logique 16x6, en commençant par le caractère espace en haut à gauche et en encapsulant de sorte que le chiffre 0 apparaisse en dessous.
Lorsqu'une entrée ASCII imprimable est reçue, imprimez ce caractère ASCII à son emplacement d'écran attribué sans supprimer aucun des caractères actuellement à l'écran.
Règles
- Votre programme n'a besoin que de mapper les caractères ASCII imprimables
0x20
vers0x7E
. - Votre programme ne doit pas se terminer et continuer de mapper des caractères à l'écran tant que tous les caractères ASCII imprimables n'ont pas été saisis. À partir de là, votre programme peut se terminer ou s’exécuter dans Neverland.
- Votre programme peut mapper des caractères comme vous le souhaitez, par exemple sur une feuille de calcul, un tableau, une fenêtre de console ou une fenêtre graphique.
- Quelle que soit la façon dont vous affichez le mappage, il doit être mis à jour en temps réel (dès qu'il reçoit une entrée utilisateur).
- Si votre programme ne lit pas l'entrée silencieusement, il doit mettre le curseur hors du chemin, afin que le texte ne gêne pas la carte.
Aidez-moi
Voici l'algorithme de pseudocode que j'ai utilisé pour générer le GIF:
loop forever
c = input
y_coord = c / 16
x_coord = c - y * 16
if c is printable
print c at (x_coord * 2 + 1, y_coord + 1)
end if
end loop
Il peut exister un autre moyen d'obtenir la sortie requise. Vous pouvez choisir d'utiliser mon algorithme ou le vôtre, mais la sortie doit être la même indépendamment.
Voici une référence de table ASCII utile.
Notation
La réponse avec le moins d'octets dans chaque langue l'emporte. S'amuser!