Rimas de vogais: Maçãs e Bananas
Há uma música infantil tradicional que repete o mesmo texto repetidamente, apenas a cada vez que cada vogal é substituída por uma vogal aleatória, mas constante na estrofe atual.
Desafio
O objetivo é propor o código mais curto que executa essa transformação em um texto de entrada.
Regras
- Você deve imprimir a rima quantas vezes houver vogais distintas.
- Cada impressão deve ser separada com uma quebra de linha (combinação específica da plataforma
\n
e\r
é aceita). - Para iteração
i
, substitua cada vogal pelai
th vogal distinta no texto original. - O texto de entrada é uma sequência de caracteres ASCII imprimíveis (intervalo
[32, 126]
. - A entrada não conterá quebras de linha incorporadas.
- Somente caracteres de vogais devem ser afetados, outros devem ser exibidos exatamente como entrada.
- Somente os caracteres das vogais contam: as vogais nasais, embora pareçam vogais (como no francês "Tintin" ), não devem ser tratadas como uma única vogal.
- O caso é importante para a saída, mas é posicional (a substituição de uma vogal maiúscula é feita pela vogal de substituição maiúscula)
- As vogais em maiúsculas não são distintas de suas contrapartes em minúsculas (ou seja,
a
<=>A
) - As vogais consecutivas são sempre consideradas separadamente (isto é,
Boat
produz ambosBoot
eBaat
) - Como a carta
y
representa uma vogal ou consoante soun (como estamos falando em inglês), é permitido manipulá-la como vogal ou consoante, no entanto, as respostas devem declarar explicitamente se tratamy
como vogal ou não.
Exemplos:
Olá Mundo
Hello world!
dá:
Helle werld!
Hollo world!
Trecho do texto original em francês (traduzido), y
tratado como vogal:
An elephant that was rambling all gently in the woods...
dá:
An alaphant that was ramblang all gantla an tha waads...
En elephent thet wes rembleng ell gentle en the weeds...
In iliphint thit wis rimbling ill gintli in thi wiids...
Yn ylyphynt thyt wys rymblyng yll gyntly yn thy wyyds...
On olophont thot wos romblong oll gontlo on tho woods...
Observe o comportamento da vogal maiúscula inicial: case é mantido em seu índice (regras 8 e 9).
Exemplo de vogal
Entrada que não contém nenhuma vogal, como:
lgn@hst:~$ rm -rf ./* ~ /
não deve produzir saída ou uma única quebra de linha.
Entrada de vogal única
A entrada que contém uma única vogal é emitida como está.
Dad sat at a car and saw a fat bat.
dá:
Dad sat at a car and saw a fat bat.
Este é o código-golfe , o menor número de códigos do número de vitórias (nada além da glória eterna do PPCG)!