99 errores en el código
La adaptación de "99 botellas de cerveza en la pared" para la informática donde los errores aumentan en lugar de que disminuyan las botellas a menudo se vuelve a publicar en Internet. Ejemplo de camiseta aquí .
Creo que será interesante ver la recurrencia potencial y la generación de números aleatorios en una gran variedad de idiomas y encontrar las formas más eficientes de hacerlo.
Hay otros pocos desafíos que hacer con 99 botellas de cerveza, ¡pero ninguna parece tener un número creciente y decreciente!
Desafío
Su programa o función no debe ingresar nada y luego imprimir
99 errores en el código
99 errores en el código
Quita uno y reméndelo
X errores en el código
(linea en blanco)
Donde X es el entero anterior menos 1 más un entero aleatorio en el rango [-15,5].
Puede fusionar el menos 1 en el entero aleatorio, permitiendo así el rango [-16,4].
Los rangos pueden ser exclusivos, por lo que menos uno más (-16,6) o (-17,5).
Los enteros aleatorios no tienen que distribuirse uniformemente, solo tienen que ser posibles.
El programa siempre comienza con 99 errores.
Puede ignorar el error gramatical de "1 errores".
El programa debe detenerse cuando el número de errores es 0 o negativo e imprimir
0 errores en el código
Nunca debe haber un número negativo de errores. El final debería verse como
Errores Y en el código
Errores Y en el código
Quita uno y reméndelo
0 errores en el código
(linea en blanco)
0 errores en el código
Una nueva línea final es aceptable.
- Su código puede ser un programa completo o una función.
- No hay entrada
- El resultado debe ser stdout o devuelto.
- Las advertencias / errores en los registros / STDERR están bien siempre que STDOUT tenga el texto requerido. Ver aquí para más información.
Este es el código de golf, por lo que gana el código más corto en bytes.
Salida de ejemplo
Salida de ejemplo de bin pegado manipulada para -11 errores cada vez