Votre tâche consiste à créer un programme qui prendra une entrée d'un mot de n'importe quelle longueur, dans la police Calibri. Ce mot sera composé de caractères alphabétiques que l'on trouve sur un clavier QWERTY normal. Il n'y aura aucun accent ni aucun autre caractère (par exemple, ponctuation, chiffres, etc.).
Ainsi, les personnages originaux sont:
ABCDEFGHIJKLMNOPQRSTU VWXYZ
Le programme le brouillera ensuite pour changer les caractères afin qu'ils soient similaires ou exactement les mêmes, ce qui confondrait probablement un correcteur orthographique en le signalant, mais cela me confondrait car il ressemble au mot normal, avec le caractère inchangé.
Un exemple de ceci est le caractère Unicode U+0430
, la lettre minuscule cyrillique a ("а"), peut ressembler au caractère Unicode U+0061
, la lettre minuscule latine a ("a") qui est le "a" minuscule utilisé en anglais.
Un autre exemple est les lettres russes а, с, е, о, р, х et у ont des équivalents optiques dans l'alphabet latin de base et semblent proches ou identiques à a, c, e, o, p, x et y.
Règles:
- Le programme doit travailler sur des personnages similaires. Cela signifie qu'ils ne peuvent être stockés sous aucune forme . Cela signifie que la valeur Unicode ou le caractère lui-même.
- Il s'agit d'un code de golf - la réponse la plus courte l'emporte!
- Vous devez également publier la version non golfée pour éviter la tricherie qui ne peut pas être détectée lors de son golf!
- Vous pouvez utiliser n'importe quelle fonction ou programme pour cela, tant que les mots n'y sont pas stockés non plus.
- Vous devez utiliser UTF-8. D'autres entrées et sorties sont interdites. C'est pour que je sois en mesure de lire ce que vous sortez et ce que je saisis, donc je n'ai pas une masse aléatoire de carrés, de points d'interrogation et ❮ther rand❮m punctuati❮n!
- Il doit fonctionner avec n'importe quel mot que j'entre.
Un exemple de travail (copiez et collez ceci dans Word et insérez un espace après, il doit marquer le second et non le premier.)
Halim
Hаlim
Quelques informations utiles sont ici
Bonne chance! Commencer
Réponses:
JavaScript, 71 caractères
Essayez-le sur JSFiddle.
Soit dit en passant, ce serait un peu plus court dans CoffeeScript ( 53 caractères )
EDIT: Je viens de remarquer que l'exigence UTF-8. Cela va être difficile en JavaScript. : - /
la source
George
c'estEgret
et d'autres choses!level
,rotor
,racecar
,refer
etkayak
.Python3 - 51
La manière paresseuse!
Légèrement non golfé
la source
print()
- il l'imprimera quand mêmeLisp commun, 142
Je n'ai pas de police nommée Calibri, et la plupart de mes polices n'ont pas ces symboles, mais DejaVu Sans les a. Je remplace les lettres par des symboles alphanumériques mathématiques . Le correcteur orthographique ne signale aucune erreur. Au lieu de cela, il ne parvient pas à détecter les erreurs, même si les mots ont des fautes de frappe évidentes.
Golfé:
Non golfé:
Usage
clisp asconfuse.lisp <in >out
ecl -shell asconfuse.lisp <in >out
sbcl --script asconfuse.lisp <in >out
Je suppose que votre interprète Lisp prend en charge Unicode et que votre environnement local est UTF-8. Ne l'utilisez pas
abcl
, car il a des problèmes en dehors du plan multilingue de base.Clones Unix: Vous pouvez exécuter
locale
dans un terminal. Si la ligne pour LC_CTYPE ne mentionne pas UTF-8, essayezexport LC_CTYPE=en_US.UTF-8
.Exemple
J'ai collé une sortie dans LibreOffice. Mon texte comporte des fautes d'orthographe évidentes, mais LibreOffice ne parvient pas à les détecter. Il ne dessine pas de gribouillis rouges sous les mots, et le bouton de vérification orthographique ne signale que "La vérification orthographique est terminée."
Le texte est "𝖭𝗈𝗐𝗐 𝗂𝗓 𝗍𝖾𝗁 𝗍𝗍𝗂𝗆𝖾 𝖿𝗈𝗈𝗋 𝖺𝗁𝗅 𝗀𝗎𝖽 𝗇𝖾𝗆 𝗍𝗍𝗈 𝖼𝗈𝖾𝗆 𝗍𝗍𝗈 𝗍𝖾𝗁 𝖺𝖾𝖽 𝗈𝗏 𝗍𝖾𝗋𝖾 𝖼𝗈𝗎𝗇𝗍𝗋𝖾𝖾." Firefox ne trouve également aucune faute d'orthographe dans ce texte.
la source
Dyalog APL , 7 caractères
Il y a un U + FEFF ( Zero-No-Break Space , alias Unicode BOM ) entre les guillemets. Ce caractère apparaît dans la police Calibri. Le caractère
''
est∘
ajouté,
à chaque¨
caractère de l'argument, puis le tout est aplati∊
.la source