Tracks
/
Python
Python
/
Ejercicios
/
Gotas de lluvia
Gotas de lluvia

Gotas de lluvia

Fácil

Introducción

Gotas de lluvia es una versión un poco más compleja del desafío FizzBuzz, una pregunta clásica de entrevista.

Instrucciones

Tu tarea es convertir un número en sus correspondientes sonidos de gotas de lluvia.

Si un número dado:

  • es divisible por 3, agrega «Pling» al resultado.
  • es divisible por 5, agrega «Plang» al resultado.
  • es divisible por 7, agrega «Plong» al resultado.
  • no es divisible por 3, 5 ni 7, el resultado debe ser el número como un string.

Ejemplos

  • 28 es divisible por 7, pero no por 3 ni por 5, así que el resultado sería "Plong".
  • 30 es divisible por 3 y 5, pero no por 7, así que el resultado sería "PlingPlang".
  • 34 no es divisible por 3, 5 ni 7, así que el resultado sería "34".
Note

Una forma común de probar si un número es divisible de manera exacta por otro es comparar el residuo o el módulo con cero. La mayoría de los lenguajes proporcionan operadores o funciones para uno (o ambos) de estos.

Cómo está estructurado este ejercicio en Python

Este ejercicio se resuelve mejor con el operador % de Python (módulo), que devuelve el residuo de la división entera de números positivos. Tiene un método equivalente, operator.mod(), en el módulo operator.

Python también ofrece métodos adicionales de «remainder» en el módulo math. math.fmod() se comporta como %, pero opera sobre números de punto flotante. math.remainder() implementa un algoritmo de «paso más cercano a cero» para el residuo de la división. Aunque te animamos a familiarizarte con estos métodos, ninguno de los dos coincidirá exactamente con el resultado de %, y no se recomiendan para este ejercicio.

La función integrada divmod() también dará un residuo que coincide con % si se usa con dos enteros positivos, pero devuelve una tuple que hay que desempaquetar.

Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
Python Exercism

¿Todo listo para empezar Gotas de lluvia?

Regístrate en Exercism para aprender y dominar Python con 17 conceptos146 ejercicios y mentoría humana real, todo gratis.

¡Profundiza en Gotas de lluvia!

Explora soluciones con canalizaciones funcionales, multiplicación de matrices, soluciones basadas en tablas precalculadas con una macro, un enfoque orientado a objetos, un uso impresionante tanto de Python como de TCL, y una edición empresarial.