Desafío
Entrada:
Un entero entre 2 y 62 (inclusive).
Salida:
Cuente de al equivalente de en la base , utilizando cualquier representación razonable para los dígitos.
Sin embargo:
Si el número es divisible por (redondeado hacia abajo, por ejemplo, la base 7 sería 7/2 = 3.5, 3.5 + 1 = 4.5, redondeado a 4 ), entonces envíe 'Fizz' en lugar del número .
Si el número es divisible por (redondeado hacia arriba, p. Ej. 11/3 = 3.666, 3.666 + 3 = 6.666, redondeado a 7 ), entonces emite 'Buzz'.
Como probablemente pueda adivinar, si su número es divisible por ambos, envíe 'Fizzbuzz'.
Ejemplos
Usando [0-9] , [AZ] y [az] como dígitos
(Solo he incluido los primeros 10 valores para mantener los ejemplos cortos, normalmente hay 4990 elementos más en cada secuencia)
Entrada: 10 (entonces 'Fizz' = 6 y 'Buzz' = 7)
Salida: 1, 2, 3, 4, 5, Fizz, Buzz, 8, 9, 10
Entrada: 2 (entonces 'Fizz' = 2 y 'Buzz' = 4)
Salida: 1, Fizz, 11, Fizzbuzz, 101, Fizz, 111, Fizzbuzz, 1001, Fizz
(He incluido los primeros 50 valores de los siguientes para mostrar mejor cómo funcionan)
Entrada: 55 (entonces 'Fizz' = = y 'Buzz' = = )
Salida: 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f, g, h, i, j, k, l, Buzz, n, o, p, q, r, Fizz, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N
Reglas
- Las lagunas estándar están prohibidas
- Este es Code Golf, por lo que la respuesta más corta en bytes gana
- La entrada y la salida pueden ser a través de la consola, o los argumentos / devoluciones de funciones
- El espacio en blanco inicial / final está bien, al igual que las líneas vacías
- No se permiten espacios entre 'Fizz' y 'Buzz'
- Cualquier variante de capitalización de 'Fizz' / 'Buzz' / 'Fizzbuzz' está bien.
- Las salidas deben estar separadas por nuevas líneas.
- Si devuelve una matriz de 'dígitos' de base 10 en lugar de representarlos con caracteres, ¡entonces deben estar en el orden correcto!
buzz
aparece por sí sola en index553391
,fizz
at724463
yfizzbuzz
at1216820199599
. Lamentablemente, ninguno de ellos es divisible por los números de esa baseRespuestas:
Gelatina ,
42 38 34 33 2932 bytes+3 para cumplir con estrictas reglas de formato
Un programa completo que imprime 5000 líneas de texto, cada línea que contiene una serie de números enteros (las cifras) o uno de
fizz
,buzz
ofizzbuzz
(bien que funciona más allá de base 62).Pruébalo en línea!
¿Cómo?
Tenga en cuenta que ... y
⌊b÷2+1⌋ =⌊b÷2⌋+1
⌈b÷3+3⌉=⌈b÷3+2⌉+1=⌈(b+6)÷3⌉+1=⌊(b+8)÷3⌋+1
actualizando ...
fuente
Carbón , 40 bytes.
Pruébalo en línea! El enlace es a la versión detallada del código. Explicación:
fuente
R ,
163131 bytesPruébalo en línea!
Gracias a @digEmAll por guardar 23 bytes. Luego jugué más a los esfuerzos de @ digEmAll para salvar otros 9.
fuente
JavaScript (ES6),
117116bytesEmite dígitos delimitados por comas, cada dígito se expresa como una cantidad decimal (por ejemplo, es y es ).1920 19 2120 1,1
Pruébalo en línea!
(limitado a 100 para que la salida de TIO no explote)
fuente
|0
y qué(5e3)
hace?Math.floor(n)
5e3
5000
Python 2 , 116 bytes
Pruébalo en línea!
O con
0-9a-zA-Z
salida:Python 2 , 143 bytes
Pruébalo en línea!
fuente
05AB1E ,
393736 bytes-2 bytes creando un puerto de la respuesta Jelly de @JonathanAllan .
Pruébelo en línea o verifique todos los casos de prueba (pero como salida de lista y con los primeros 100 en lugar de 5000).
Explicación:
Ver este consejo 05AB1E mío (sección Cómo usar el diccionario? ) Para entender por qué
”FizzÒÖ”
es"Fizz Buzz"
.fuente
[input, input+8]
parte y la parte del filtro después (que ahora hagoDõQi yIв
, pero tengo la sensación de que se puede jugar un poco más ...)Perl 6 , 91 bytes
Pruébalo en línea!
Bloque de código anónimo que devuelve una lista de cadenas
Fizz/Buzz/FizzBuzz
o una listainversade enteros en la base.fuente
R , 138 bytes
Pruébalo en línea!
fuente
C # (compilador interactivo de Visual C #) ,
180171 bytesSalidas como la respuesta de Arnauld. Gracias a digEmAll por la idea de usar una pila para invertir la salida.
Pruébalo en línea!
fuente
05AB1E , 34 bytes
Utiliza el conocimiento matemático de Jonathan que
ceil(n/3+3)
=floor((n+8)//3)+1
Pruébalo en línea!
Explicación
fuente