Sua tarefa é criar um programa que receba uma entrada de uma palavra de qualquer tamanho, na fonte Calibri. Essa palavra será composta de caracteres de letras encontrados em um teclado QWERTY normal. Não haverá acentos ou outros caracteres (por exemplo, pontuação, números etc.).
Portanto, os caracteres originais são:
a B C D e F G H I J K L M N o p q R S T U V W x y Z
O programa embaralha-o para alterar os caracteres para que pareçam iguais ou exatamente iguais, o que provavelmente confundiria um verificador ortográfico ao sinalizá-lo, mas isso me confundiria como se parece com a palavra normal, com o caractere inalterado.
Um exemplo disso é o caractere Unicode U+0430
, letra minúscula cirílica a ("а"), que pode parecer idêntico ao caractere Unicode U+0061
, letra minúscula latina a, ("a"), que é a letra minúscula "a" usada em inglês.
Outro exemplo são as letras russas а, с, е, р, х e y que possuem equivalentes ópticos no alfabeto latino básico e parecem próximas ou idênticas a a, c, e, o, p, xe y.
Regras:
- O programa tem que trabalhar com caracteres semelhantes. Isso significa que eles não podem ser armazenados de qualquer forma . Isso significa que o valor Unicode ou o próprio caractere.
- Este é um código de golfe - a resposta mais curta ganha!
- Você também deve postar a versão não destruída para evitar trapaças que não podem ser detectadas quando o jogo é jogado!
- Você pode usar qualquer função ou programa para fazer isso, desde que as palavras também não sejam armazenadas.
- Você deve usar UTF-8. Outras entradas e saídas são proibidas. Isso é para que eu possa realmente ler o que você está produzindo e o que estou inserindo, para não ter uma massa aleatória de quadrados, pontos de interrogação e outras pontuações aleatórias!
- Tem que trabalhar com qualquer palavra que eu insira.
Um exemplo de trabalho (copie e cole isso no word e insira um espaço depois, ele deve sinalizar o segundo e não o primeiro.)
Halim
Hаlim
Algumas informações úteis estão aqui
Boa sorte! Início
Respostas:
JavaScript, 71 caracteres
Experimente no JSFiddle.
A propósito, isso seria um pouco mais curto no CoffeeScript ( 53 caracteres )
EDIT: Acabei de notar que o requisito UTF-8. Isso vai ser difícil em JavaScript. : - /
fonte
George
éEgret
e outras coisas!level
,rotor
,racecar
,refer
ekayak
.Python3 - 51
O caminho preguiçoso!
Ligeiramente não-destruído
fonte
print()
- que vai imprimi-lo de qualquer maneiraLisp comum, 142
Não tenho nenhuma fonte chamada Calibri, e a maioria das minhas fontes não possui esses símbolos, mas o DejaVu Sans os possui. Substituo letras por símbolos alfanuméricos matemáticos . O verificador ortográfico não sinaliza nenhum erro. Em vez disso, ele falha em detectar erros, mesmo que as palavras tenham erros óbvios.
Golfe:
Ungolfed:
Uso
clisp asconfuse.lisp <in >out
ecl -shell asconfuse.lisp <in >out
sbcl --script asconfuse.lisp <in >out
Suponho que seu intérprete Lisp tenha suporte a Unicode e sua localidade seja UTF-8. Não use
abcl
, pois possui problemas fora do Plano Multilíngue Básico.Clones Unix: você pode executar
locale
em um terminal. Se a linha para LC_CTYPE não mencionar UTF-8, tenteexport LC_CTYPE=en_US.UTF-8
.Exemplo
Eu colei alguma saída no LibreOffice. Meu texto possui erros ortográficos óbvios, mas o LibreOffice não consegue detectá-los. Não desenha rabiscos vermelhos sob as palavras, e o botão de verificação ortográfica apenas informa: "A verificação ortográfica está concluída".
O texto é "𝖭𝗈𝗐𝗐 𝗂𝗓 𝗍𝖾𝗁 𝗍𝗍𝗂𝗆𝖾 𝖿𝗈𝗈𝗋 𝖺𝗁𝗅 𝗀𝗎𝖽 𝗍𝗍𝗈 𝖼𝗈𝖾𝗆 𝗍𝗍𝗈 𝗍𝖾𝗁 𝖺𝖾𝖽 𝗈𝗏 𝗍𝖾𝗋𝖾". O Firefox também não encontra erros de ortografia neste texto.
fonte
Dyalog APL , 7 caracteres
Há um U + FEFF ( espaço sem quebra de largura zero , também conhecido como BOM Unicode ) entre as aspas. Esse caractere ocorre na fonte Calibri. O caractere
''
é∘
anexado,
a cada¨
caractere no argumento e a coisa toda é achatada∊
.fonte