Pulse cualquier tecla para continuar

36

Su tarea es crear un programa que mostrará el siguiente texto, espera a que el usuario pulse una tecla (que está bien hacer caso omiso de teclas como ctrl, alt, caps lock, etc, siempre y cuando teclas como letters, numbers, symbols, y enterno son ignorados), y luego terminar el programa:

Press any key to continue... 

Se permiten nuevas líneas al final. El programa debe salir inmediatamente después de presionar una tecla. Además, el programa debe ser bastante portátil (es decir, sin encabezados o módulos específicos del sistema operativo, se ejecuta fuera de un IDE, etc.).


La solicitud debe ser exactamente como se muestra arriba, a menos que no se pueda evitar una nueva línea final.


Este es el , por lo que gana la respuesta más corta en bytes. Esta es también mi primera pregunta de código de golf, así que me disculpo si no conozco las reglas sobre PPCG.

ckjbgames
fuente
44
¿El texto de salida distingue entre mayúsculas y minúsculas? ¿WinBatch PAUSEsería una respuesta válida (los puntos suspensivos se extienden de ...a . . .)?
FlipTack
13
También sugeriría esperar una semana o dos antes de aceptar cualquier respuesta
Kritixi Lithos
3
La mayoría de las pausefunciones del lenguaje son probablemente insensibles a teclas como Caps-Lock o Control (presionadas por sí mismas). Tal vez debería aclarar si se permite que el programa no note esas claves
Luis Mendo
15
Debes esperar unas semanas antes de aceptar una respuesta, ya que muchos otros te han aconsejado (sin embargo, has elegido ignorar sus consejos)
FlipTack
12
@JungHwanMin Estoy de acuerdo con los demás. Espere para aceptar una solución hasta que las entradas hayan dejado de llegar. Realmente no disfruto montando la montaña rusa Reputation
Suever el

Respuestas:

5

SmallBasic, 18 17 bytes

  • Versión 2.0

17 bytes

TextWindow.Show()
  • Version 1.0

18 bytes

TextWindow.Pause()
Roman Gräf
fuente
3
¿No podrías simplemente hacerlo TextWindow.Show()? Basado en este sitio que debería tener el mismo efecto.
Suever
20

Lote, 46 bytes

@echo Press any key to continue...
@pause>nul

Porque pausela salida contiene un espacio antes de cada uno ..

Neil
fuente
55
Bonita redirección. ¿Podría también enviar la salida a, digamos x,? Luego xse crearía un archivo que contiene el texto Press any key to continue . . .. Ahorra 2 bytes, pero no estoy seguro de si eso va en contra de este desafío o alguna laguna estándar.
steenbergh
Estoy en el sistema sin elección.exe desde hace un tiempo, pero tengo la sensación de que @choice /n /m Press any key to continue...también fue posible hace algunas décadas.
manatwork
La opción tiene valores predeterminados como J y N, por lo que el programa solo continuaría cuando se presionen J o N si recuerdo correctamente.
geisterfurz007 Detener este caos
@ geisterfurz007 Además, el valor predeterminado está localizado. Por ejemplo, para mí choicees equivalente a choice /c SN(para sim(sí) y não(no) en portugués).
Ismael Miguel
Ah, tienes razón, @ geisterfurz007. Ahora recuerdo cuán tontas se veían mis archivos por lotes con el alfabeto completo enumerado. Ok, entonces esta era una idea muerta.
manatwork
15

HTML + JavaScript (ES6), 36 + 25 = 61 bytes

Realmente no puede salir de un programa JavaScript, por lo que borrar la página web es lo mejor que se me ocurre.

onkeyup=_=>a.innerHTML=''
<a id=a>Press any key to continue...


HTML + JavaScript (ES6), 33 + 28 = 61 bytes

Solución alternativa sugerida por @LarsW que redirige a about:blank.

onkeyup=_=>location='about:blank'
Press any key to continue...


HTML / JavaScript, 60 bytes

Otra solución increíble de @Ismael Miguel que no usa JS independiente. ¡1 byte guardado!

<html onkeyup=this.innerHTML=''>Press any key to continue...


HTML + JavaScript (ES6), 26 + 28 = 54 bytes

Otra solución más de @George Reith haciendo uso de documentos escritos.

onkeyup=_=>document.open()
Press any key to continue...

HTML + JavaScript (ES7), 23 + 28 = 51 bytes

Mismo programa que utiliza el operador de enlace ES7 propuesto :

onkeyup=::document.open
Press any key to continue...


Como la mayoría de estas soluciones no son mías, ¡haz una cortesía y vota en los comentarios!

Darrylyeo
fuente
10
36 + 25 es 61 o me estoy perdiendo algo?
2
@LarsW, ckjbgames Bueno, ¿cuáles son las posibilidades? ¡Nunca se sabe hasta que lo escribes! ;)
darrylyeo
2
<html onkeyup=this.innerHTML=''>Press any key to continue...<- 60 bytes. Pruébelo en jsfiddle.net/xhb69401 (funciona con ambos <html>y <body>)
Ismael Miguel
2
Forma más corta de borrar el documento y no necesita anclaje. onkeyup=_=>document.open()con Press any key to continue...para un gran total de 54 bytes.
George Reith el
2
También con el operador de enlace propuesto es-next podría reducirse a onkeyup=::document.open.
George Reith el
14

MATL, 35 bytes

'Press any key to continue...'D0$Y.

Explicación

'Press any key to continue...'      % String literal
D                                   % Display the string (has trailing newline)
0$Y.                                % Pause until the user presses any key
Suever
fuente
@LuisMendo Ah buena captura
Suever
2
Por otro lado, Y.tampoco. Tal vez el OP debería aclarar. Claves como Control y Bloqueo de mayúsculas fallarán en la mayoría de las soluciones
Luis Mendo
1
@LuisMendo Está bien que se pierda teclas de control, bloqueo de mayúsculas, etc.
ckjbgames
@LuisMendo ¿Su modificación no requeriría una tecla enter? O tal vez lo estoy recordando mal
Suever
@Suever ¡Oh, por supuesto! Se requiere
ingresar
11

TI-Basic, 55 bytes

Básicamente, se repite hasta que se presiona una tecla. Lástima que las letras minúsculas sean de dos bytes cada una en TI-Basic ...

Disp "Press any","key to continuesin(
Repeat getKey
End

PD: Vea el comentario de @GoldenRatio para obtener una explicación de cómo funciona esto. Es genial!

Timtech
fuente
En primer lugar, su recuento de bytes está actualmente apagado, eso es en realidad 55 bytes (acabo de hacer un programa en TI-84 + y lo probé). En segundo lugar, esto técnicamente no es válido, porque no se muestra. Presione cualquier tecla para continuar ... y en su lugar se corta a 15 caracteres más ... En cambio, al preservar el recuento de bytes, haga dos comandos disp. :Disp "Press any(no olvide: en su código, cuenta) y Disp "key to continuesin((El pecado obliga a ... en 1 byte a compensar la nueva línea y disp, y esto ahorra un espacio entre cualquiera y la tecla)
Golden Ratio
Vence a esto, primer idioma que pensé.
C Anderson
Thanks for the tip @GoldenRatio, I guess I was thinking getKey was 2 bytes when it's actually 1. I suppose with Text( or Output( you could fit it all on one line. But, your suggestion is better. I didn't think about using the implicit ellipsis at the end of a line. Thanks again, I'll edit that now.
Timtech
Thx for updating it, and I guess using disp with a comma has a good reason finally, since it never saved bytes. I usually put them on seperate lines because of my tendency to hit the clear button :D. Also, is there any official method of how to score the size? By this I mean, should the 9 bytes I did not count for a program name count? And should the 1 byte for the start colon that cannot be deleted count? I did mark that as 0 bytes, because for finding space I'm used to subtracting 10 for program size, but maybe the colon should count.
Golden Ratio
No, basically if you make a completely empty program it counts for 0 bytes, then you start from there. That would be like counting the filename of a source file. Also, the beginning colon is just for show and is not actually a part of the program. In fact, every newline automatically shows a colon in the editor on the calculator, but again, these are just for show (try cemetech sourcecoder to see what I mean). Last, the bytecount is the same whether we split the Disp over two lines or not (but, it is not always this way).
Timtech
8

Bash, 46 43 42 bytes

Saved 1 byte thanks to @DigitalTrauma

read -rn1 -p"Press any key to continue..."

Uses the read built-in. -r makes sure it doesn't allow the user to input escapes. -n 1 allows just one character. -p is the prompt

Downgoat
fuente
Doesn't continue until I hit a <cr>
Glenn Randers-Pehrson
@ GlennRanders-Pehrson Creo que eso puede suceder si su bash no es compatible -n 1. Sin embargo, funciona sin presionar enter para mí (v3.2.57) y en mi máquina debain (v4.3.30)
Downgoat
Also doesn't work if I type a quote (")
Glenn Randers-Pehrson
1
Does work OK if I put the line in a file (anykey.sh) and run that. Works fine too even if I remove the space between "-rn" and "1".
Glenn Randers-Pehrson
1
-rn1 saves 1 byte
Digital Trauma
8

Haskell, 51 50 bytes (Thanks @villou24)

main=putStr"Press any key to continue...">>getChar

Try it online!

Erik
fuente
66
That waits for enter. You can use getChar instead.
Christian Sievers
1
You can save a byte by removing the space between putStr and the string.
villou24
Deje que el respondedor edite su propia publicación, @ckjbgames, no lo haga por él
MildlyMilquetoast
5

Octave / MATLAB, 42 bytes

disp('Press any key to continue...');pause
Suever
fuente
Voté esta respuesta hace un mes, asumiendo que era óptima ... Pero te han superado :)
Stewie Griffin
4

QBasic ( QB64 ), 37 (42?) Bytes

Desafortunadamente, el mensaje de fin de programa incorporado de QBasic no tiene puntos suspensivos, por lo que tendremos que imprimirlo nosotros mismos:

?"Press any key to continue..."
SLEEP

( SLEEPsin una discusión espera hasta que se presione una tecla).

Este código hace lo que la pregunta literalmente pide, pero no parece que se ajuste al espíritu de la pregunta porque, por supuesto, QBasic muestra "Presione cualquier tecla para continuar" y espera presionar una tecla antes de regresar al IDE. Aquí hay uno que va directamente al IDE, para +5 bytes:

?"Press any key to continue..."
SLEEP
STOP

STOPes una declaración de depuración En QBasic normal, establece un punto de interrupción: la ejecución se detiene y volvemos al IDE, pero la ejecución se puede reanudar nuevamente con F5. No está claro si eso contaría como el programa "saliendo". Sin embargo, estoy usando el emulador QB64, que no puede hacer puntos de interrupción. Al encontrarse STOP, simplemente se detiene, regresando directamente al IDE sin el mensaje redundante "Presione cualquier tecla".

DLosc
fuente
Por extraño que parezca, la 'Presione cualquier tecla para continuar' también aparece cuando se ejecuta un QB64 exe independiente. He intentado utilizar LOCATEpara imprimir sólo los puntos después de ella, pero QBasic borra toda la fila inferior cuando se imprime este mensaje ...
steenbergh
4

Procesamiento, 89 81 bytes

void setup(){print("Press any key to continue...");}void draw(){if(key>0)exit();}

Explicación

void setup(){print("Press any key to continue...");}

Esto es necesario ya que estoy usando más de una función en mi programa. Cualquier cosa dentro setup()se llama, en este caso, la cadena "Press any key to continue...".

if(key>0)exit();

Comprueba si key( keysiempre contendrá el valor int de la última tecla presionada) es mayor que 0(es decir, no es un byte nulo). Si se cumple la condición, el programa se cierra.

void draw(){}

draw() garantiza que el programa siempre seguirá buscando una clave en lugar de detenerse una vez que se inicie el programa.

(Eso se siente cuando un incorporado en un lenguaje similar a Java todavía es detallado ...)

Kritixi Lithos
fuente
Realmente no sé Procesar, pero creo que deberías poder reemplazarlo void steup(){...}porstatic{...}
Pavel
2
@Pavel No, no funciona
Kritixi Lithos
4

Pascal, 75 65 bytes

Esto se probó con el compilador Free Pascal, versión 3.0.0.
Puede funcionar con TurboPascal 7 o más reciente.

uses Crt;begin write('Press any key to continue...');readkey;end.

Lamentablemente, no puedo reemplazar readkeycon readlnya que el desafío requiere que cualquier ser aceptado clave.


He probado este código en http://rextester.com/l/pascal_online_compiler , con y sin proporcionar una entrada.
Como se esperaba, el programa finaliza después de 10 segundos, ya que se encuentra esperando una pulsación de tecla que nunca sucede.


Gracias a @manatwork por guardarme 10 bytes al demostrarme que estoy equivocado y mostrar que no necesito el program _;.

Ismael Miguel
fuente
Ni FreePascal ni TurboPascal requieren el uso de programpalabras clave. (En realidad nunca me encontré tan antigua aplicación que lo hizo.)
manatwork
@manatwork Lo intenté sin programy se quejó. Además, a veces uso TurboPascal. Ese requiere (aviso: requiere ) el programallí. Si conoce algún lugar donde pueda probar dónde se ejecuta sin el program, lo eliminaré. Odio tenerlo allí. Y eso uses Crt;.
Ismael Miguel
1
No te entiendo. Funciona bien, incluido el servicio rextester que vinculó. En mi línea de comando: pastebin.com/pVr9dqxd
manatwork
@manatwork Tienes razón. Sé por qué se quejó: escribí en program;lugar de eliminar ese bit. Gracias por alertarme de eso.
Ismael Miguel
4

Scratch, 81 bytes

imagen

when gf clicked
say [Press any key to continue...
wait until <key [any v] pressed

( Enlace de Scratchblocks )

Si desea que se detenga todo el programa cuando presionó una tecla (incluidos otros hilos) tendría que agregar un stop all. Si desea deshacerse del cuadro de diálogo say, necesita un saybloque vacío (también stop allfunciona).

¡Es conveniente que Scratch tenga algo incorporado para esto!

Florrie
fuente
4

Bash 48 44 42 bytes

read -rn1 -p"Press any key to continue..."

@ mame98 Gracias por guardar 4 bytes.

@RaisingAgent Gracias por guardar 2 bytes.

Abel Tom
fuente
Puede mejorar esto sumando las banderas, como read -srn1 -p".."y eliminando el último espacio en la cita de solicitud. Además, no estoy seguro si necesita la bandera 's'
mame98
1
eliminar el último espacio en las comillas _&-s
RaisingAgent
@RaisingAgent Gracias, actualizado :)
Abel Tom
3

R, 56 bytes

cat('Press any key to continue...');keypress::keypress()

Esto funciona en terminales Linux y OSX.

Sven Hohenstein
fuente
3

Ruby (2.3) (+ Lote), 52 55 54 53 46 bytes

Ahora 46 bytes gracias a Alexis Andersen.

Nota: Probado en Windows, podría no funcionar si no hay un pausecomando.

puts"Press any key to continue...";`pause>nul`

Explicación

Puts el texto requerido:

puts"Press any key to continue..."

Fin de la linea:

;

Ejecute el pausecomando Batch y la salida de tubería a nul:

`pause>nul`
notme1560
fuente
Hola, bienvenido a PPCG. Veo que tiene una lista de ediciones en el cuerpo de su envío. Si bien esto puede ser habitual en otros sitios, dado que cualquiera puede ver el historial de edición de una publicación, generalmente dejamos el historial de la publicación fuera del cuerpo (aparte del tachado para el conteo de bytes). Este parece ser un buen primer golf y espero que te diviertas aquí.
Wheat Wizard el
@WheatWizard Gracias, ¿debería dejar las modificaciones allí o eliminarlas?
notme1560
1
Creo que es una respuesta mucho más legible si las elimina y yo personalmente recomendaría hacerlo.
Wheat Wizard el
puede acortar eso reemplazando el sistema con backticks: ` pause>nul` o incluso más corto, solo use gets (además, no hay una buena manera de incluir un backtick en un bloque de código en un comentario)
Alexis Andersen
@AlexisAndersen no getsespera la entrada, ¿y no cualquier tecla?
notme1560
3

Java, 127 bytes

class P{public static void main(String[]a)throws Exception{System.out.print("Press any key to continue...");System.in.read();}}

Nota: la consola debe configurarse en modo sin formato para que esto funcione.

Comunidad
fuente
Entonces me temo que su código debe configurar la consola para, como original.legin 's solución Perl hace.
manatwork
@manatwork Also, the program must be fairly portable (i.e no OS-specific headers or modules, runs outside of an IDE, etc.)si sigue ese enlace SO, no hay una manera independiente del SO para hacer esto. Es decir, la respuesta que vinculó es tan válida como esta.
3

SmileBASIC, 52 bytes

?"Press any key to continue...
WHILE""==INKEY$()WEND
12Me21
fuente
3

Python 2, 110 bytes

import curses as c
s=c.initscr()
c.cbreak()
s.addstr(0,0,'Press any key to continue...')
while not s.getch():1
Puertas de Zach
fuente
2

Mathematica, 62 bytes

EventHandler["Press any key to continue...","KeyDown":>Exit[]]

Explicación

EventHandler["Press any key to continue...","KeyDown":>Exit[]]
EventHandler[                                                ]  (* Create a new EventHandler *)
             "Press any key to continue..."                     (* Print the dialog text *)
                                            "KeyDown":>Exit[]   (* When a key is pressed down, exit *)
JungHwan Min
fuente
2

SmileBASIC, 55 bytes

?"Press any key to continue..."@L IF INKEY$()!=""GOTO@L

Explicado:

?"Press any key to continue..."  '? means PRINT
@L                               'start of loop
IF INKEY$()!="" GOTO @L          'if no key pressed goto @L
caracol_
fuente
WHILE""==INKEY$()WENDes más pequeño
12Me21
2

Python 2/3 POSIX, 85 bytes

import sys,tty
print('Press any key to continue...')
tty.setraw(1)
sys.stdin.read(1)
techo
fuente
2

Python 3, 65 bytes

Requiere la versión de Windows de Python.

from msvcrt import*
print("Press any key to continue...")
getch()

msvcrt.getch () no espera a que se presione la tecla Intro como input (), devuelve la primera tecla presionada.

Documentos de Python para msvcrt.getch (): https://docs.python.org/3/library/msvcrt.html#msvcrt.getch

Gracias a @Fliptack por guardar algunos bytes

Zachary Smith
fuente
Esta respuesta no es válida sin un import msvcrtlugar
FlipTack el
2
Como se trata de code-golf, debe eliminar los comentarios de su código. Además, el uso from msvcrt import* parece ser 1 byte más corto
FlipTack
genial, gracias @FlitTack
Zachary Smith
2

Node.js, 102 101 99 bytes

with(process)stdout.write('Press any key to continue...'),s=stdin,s.setRawMode(1),s.on('data',exit)
George Reith
fuente
No mucha ganancia, solo 1 carácter más corto con with: pastebin.com/BhrAyq2K
manatwork
@manatwork ¡Buena! La primera vez withme ha ahorrado bytes (o bytes)
George Reith
1
Ahora puede eliminar los corchetes y reemplazar los saltos de línea con comas por 2 bytes más.
darrylyeo
Además, si no me equivoco, stdout.write`Press any key to continue...`guardaré 2 bytes en ES6.
darrylyeo
@darrylyeo Comas funciona eso es increíble, gracias! Desafortunadamente, un literal de plantilla etiquetado no se puede usar aquí, ya que realmente pasa en una matriz y process.stdout.writeno realiza conversiones implícitas a la cadena (solo errores).
George Reith el
2

Sinclair ZX81 / Timex TS1000 BASIC: Método 1 aproximadamente 41 bytes

1 PRINT "PRESS ANY KEY TO CONTINUE..."
2 GOTO (INKEY$<>"")+VAL "2"

Método 2 aproximadamente 38 BYTES

1 PRINT "PRESS ANY KEY TO CONTINUE..."
2 PAUSE VAL "4E4"

Prefiero el método 1 como en el ZX81, hay un parpadeo de la pantalla cuando PAUSE se llama, y ​​si lo desea el tiempo suficiente (siempre que el ZX81 no se sobrecaliente ni se bloquee), la pausa finalmente llegará a su fin, mientras que el método 1 está bloqueado un bucle infinito hasta que se presiona una tecla y no parpadea la pantalla.

Calcularé la cantidad correcta de bytes que se usarán más adelante cuando tenga el bit BASIC correcto que me dirá. Por cierto, usar VAL "x" en lugar del número ahorra RAM valiosa en un ZX81 (creo que esto también es lo mismo para el ZX Spectrum).

Shaun Bebbers
fuente
Ambos métodos también funcionarán en el Sinclair ZX Spectrum, la ventaja es que el Spectrum tiene letras mayúsculas y minúsculas, mientras que el ZX81 no lo hace de manera predeterminada (y tampoco tiene una comilla simple como carácter estándar).
Shaun Bebbers
Método 2 en el Sinclair ZX Spectrum podría ser condensado a1 PRINT "Press any key to continue...": PAUSE 4e4
Shaun Bebbers
1
PAUSE 0hace una pausa para siempre.
Neil
Sí, no he programado en Sinclair Spectrum BASIC durante tanto tiempo que me olvidé de eso. PAUSE 0en ZX81 BASIC no se detiene para siempre.
Shaun Bebbers
1

Perl 5, 79 bytes

system "stty cbreak";$|=1;print "Press any key to continue...";read(STDIN,$a,1)

Usado como:

perl -e 'system "stty cbreak";$|=1;print "Press any key to continue...";read(STDIN,$a,1)'

No hay premios, por supuesto. Estoy seguro de que alguna persona Perl tendrá una mejor manera.

(89 bytes si la invocación del intérprete también debe incluirse en el recuento)

original.legin
fuente
@Pavel, contó systemen su bytecount, así que no sé a qué te referías con ese comentario.
Dada
1
@ original.legin Creo que Perl no lo hará mucho mejor que esto. Todavía puede jugar unos pocos bytes: $|=1no es necesario, tiene un espacio después print, puede colocar el paréntesis alrededor de los argumentos read, puede usar backticks en lugar del sistema y, finalmente, printdevuelve 1, por lo que puede usarlo en lugar de el literal 1en la llamada a read. Entonces, al final, obtenemos:perl -e '`stty cbreak`;read STDIN,$a,print"Press any key to continue..."'
Dada
@Dada También puede reducir 2 bytes con say, aunque creo que este enfoque no cumple con el requisito "portátil". La mejor solución portátil que puedo encontrar es perl -MTerm::ReadKey -E'say"Press any key to continue...";ReadMode 3;ReadKey'(52 bytes + 16 bytes para -MTerm::ReadKey<space>). Tenga cuidado, esto arruinará su terminal a menos que restaure el modo de lectura al final con ReadMode 1.
ThisSuitIsBlackNot
1
@ThisSuitIsBlackNot De hecho, no vi ese requisito sobre portabilidad. Acerca de say, tiendo a no usarlo más (estoy de acuerdo principalmente con esta meta publicación). Ahora de nuevo a un código corto, IO::Promptserá más corto que Term::ReadKey(40 + 13 = 53 bytes): perl -MIO::Prompt -e 'prompt"Press any key to continue... ",-1'. Y como sucede, es aún más corto de lo que sugerí en mi comentario anterior.
Dada
1
@ Dada Puedo ver ambos lados del -Eargumento. Sin embargo, la última vez que lo comprobé, la respuesta de JB no había sido cuestionada durante cuatro años, así que eso es lo que he seguido. Quizás necesito volver a visitarlo nuevamente. En cuanto a IO :: Aviso, ¡buen hallazgo! Aunque no funciona en mi Strawberry 5.20.2 en Windows, mientras que Term :: ReadKey sí lo hace.
ThisSuitIsBlackNot
1

PHP, 73 bytes

echo"Press any key to continue...";$h=fopen("php://stdin","r");fgets($h);

Ejecútelo en el shell interactivo de PHP ( php -a)

ʰᵈˑ
fuente
“El programa debe salir inmediatamente después de pulsar una tecla.” - Este espera hasta entrar o apagón ...
manatwork
1

C #, 101 bytes

using C=System.Console;class P{static void Main(){C.Write("Press any key to continue...");C.Read();}}

Probado en Linux, debe ejecutarse en cualquier sistema que tenga las bibliotecas .NET y Common Language Runtime.

Programa sin golf:

using C = System.Console; // creating a shorter alias for the System.Console class

class P
{
    static void Main()
    {
        C.Write("Press any key to continue...");    // prints the message
        C.Read();   // waits for key press
    }
}

CTRL, ALT, SHIFT se ignoran. La tecla presionada se repetirá en la pantalla si se puede imprimir.

El eco se puede deshabilitar reemplazando C.Read () con C.ReadKey (0 <1) a un costo de 6 bytes más.

adrianmp
fuente
1

8vo , 47 bytes

"Press any key to continue..." . cr con:key bye

Este programa ignora teclas como ctrl, alt, bloqueo de mayúsculas. Se cierra con teclas como letras, números, símbolos e ingresar.

Explicación

"Press any key to continue..." . cr \ Print message 
con:key                             \ Wait for key input from console  
bye                                 \ Quit program 
Chaos Manor
fuente
Solo en Windows puede guardar 3 bytes omitiendocr
Chaos Manor
1

C #, 29 bytes

class P{static void Main(){}}

No estoy seguro de si esto se considera válido porque imprime:

Pulse cualquier tecla para continuar . . .

Pero hay una respuesta de Batch que también imprime esto.

TheLethalCoder
fuente
1

Adelante (gforth), 39 bytes

." Press any key to continue..."key bye

(Sí, ya existe una octava solución, pero esta es más corta)

therealfarfetchd
fuente