Es importante interpretar el código correctamente antes de aplicarlo a tu proyecto y si ttienes algo que aportar puedes dejarlo en la sección de comentarios.
Solución:
HTML y JavaScript, 123
Esto funciona de manera similar a Hacker Typer, pero con su propio código fuente. Avísame si he entendido mal las reglas.
Y aquí hay una versión con estilo (170 caracteres):
he hecho un manifestación. Se modifica porque JS Bin agrega mucho código adicional, pero la idea general es la misma.
fiesta, 51
58for w in $(<$0);do read -sn 1;printf -- "$w ";done
Perl + Término::ReadKey, 56 bytes
use Term'ReadKey;ReadMode 4;open 0;ReadKey,print for <0>
Gracias a ThisSuitIsBlackNot por la inspiración original y a primo por sugerir
open 0
y<0>
.Tenga en cuenta que la nueva línea después de
for
en realidad es innecesario, excepto que necesito incluir una nueva línea adicional algun lado para llevar el recuento de espacios en blanco hasta el mínimo especificado de cinco.También tenga en cuenta que, al igual que el envío de ThisSuitIsBlackNot, este programa requiere el módulo Term::ReadKey de CPAN. En Debian/Ubuntu Linux, este módulo, si aún no está presente, se puede instalar fácilmente con el comando
sudo apt-get install libterm-readkey-perl
.Además, para ahorrar algunos caracteres, este programa no restaura el modo de entrada a la normalidad al salir, por lo que es posible que no pueda ver lo que está escribiendo después. Ejecutando el comando de shell
stty sane
oreset
debería arreglar eso. Este problema podría solucionarse, a costa de 10 bytes adicionales, con:use Term'ReadKey;ReadMode 4;open 0;ReadKey,print for<0>;ReadMode 0
Bonificación: quine pura, 81 bytes
$_=quse Term'ReadKey;ReadMode 4;ReadKey,say for split$/, "$_=q$_;eval";eval
Nuevamente, la nueva línea después de la coma solo es necesaria para cumplir con el mínimo de cinco espacios en blanco.
A diferencia del programa de 56 bytes anterior, esta versión en realidad no necesita leer su propio código fuente, ya que se basa en un quine, específicamente en este quine:
$_=qsay"$_=q$_;eval";eval
Lo bueno de este quine es que puede transportar fácilmente una "carga útil" arbitraria dentro del
q
bloque, sin tener que repetirlo. Si bien no puede vencer<0>
en pocas palabras, se acerca bastante.Nota: Este programa usa Perl 5.10+
say
característica, y por lo tanto necesita ser invocado con el-M5.010
(o-E
) interruptor de línea de comando. Según el consenso establecido sobre metadatos, los interruptores que se utilizan para habilitar funciones de lenguaje moderno no cuentan como caracteres adicionales. La solución más corta que puedo encontrar sinsay
es de 83 bytes:$_=quse Term'ReadKey;ReadMode 4;ReadKey,print for split/^/, "$_=q$_;eval";eval
Ambos también se pueden hacer más compatibles con la terminal al (unir las dos últimas líneas e) insertar:
;ReadMode 0
antes del ultimo
}
.Tienes la opción de corroborar nuestro estudio añadiendo un comentario o dejando una valoración te estamos agradecidos.
¡Haz clic para puntuar esta entrada!(Votos: 2 Promedio: 4.5)Utiliza Nuestro Buscador