[TPC-R] Reto #2: Decimales de PI

Iniciado por Once, Diciembre 21, 2017, 12:14:44 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

The Python Challenges
el regreso
Reto #2: Decimales de Pi


La idea de este reto es implementar un script capaz de retornar el n-ésimo decimal de Pi sin calcularlo sino usando esta página: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Consideraciones


  • Se pide obtener los decimales, por lo que el primer 3 no cuenta
  • La función recibirá un argumento (posición) indicando el primer decimal a obtener, este será el primer argumento pasado a la función. Tener en cuenta que posición=0 no representa nada, por lo que la función deve devolver None y  posición=1 indica el primer número decimal
  • Opcionalmente, la función recibirá un segundo argumento (cantidad) que indicará la cantidad de dígitos a obtener a partir de la posición indicada en el primer argumento
  • si el argumento posición es mayor que la cantidad de decimales que proporciona la página, la función debe devolver None

Ejemplos

Código: python
pi(1) -> 1
pi(1, 3) -> 141
pi(14, 2) -> 93
pi(0) -> None


Reglas


  • TODAS las dudas hacerlas en este post, así si algo no queda claro es aclarado para todos los participantes a la vez. Así que bajo ninguna circunstancia se resuelven dudas por privado
  • La solución debe estar escrita en Python 3.*
  • Seguir en la medida de lo posible las PEP8
  • La elegancia de la solución otorga puntos extra
  • Cumplir con la plantilla. (La calificación la hace un bot por lo que es importante seguirla), el no cumplimiento de la plantilla acarrea una sanción en tiempo.
  • El resultado retornado por la función debe ser un entero, no lista ni string.

Plantilla

Código: python
def pi(posicion, cantidad=None):
    resultado = 0  # Resultado a retornar
    return resultado  # Retornamos el resultado

if __name__ == "__main__":
    # Hacer las pruebas del scrip
    # en este bloque para no interferir
    # con la calificación del bot
    pi(1)  # ejemplo de llamada a la función


Ayuda


Calificación
[/b]

Este reto lo gana el script más rápido

Recomendación: Hacer lo que se pide y preferiblemente evitar los prints puesto que consumen tiempo y el bot sólo califica lo que retorna la función.

NOTA: Para este reto se penalizarán la cantidad de librerias externas utilizadas.

Enviar la solución por mp a @Once el reto cierra el domingo a las 11:59PM hora Colombiana

Happy coding
Saludos.







No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

*Reservado para las soluciones*







No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Hola, me surge la siguiente duda

Al incumplir esta medida del PEP8

Maximum Line Length
Limit all lines to a maximum of 79 characters.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

¿Se aplica penalización?

Gracias

Hola @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

si no puedes acortar la longitud de la línea, no hay problema, como dice el post, la idea es cumplirlas cuando sea posible (no siempre se pueden cumplir todas) además, la idea de incluir las PEP8 la calificación es solo para que los que se animen a participar sepan que existen y por lo menos las lean, así se van acostumbrando a escribir código un poco más "standard" y mucho más legible.

Aprovecho para aclarar, para todos los participantes que las normas que no se deben incumplir son:

Código: python
x             = 1
y             = 2
long_variable = 3
    [/li]

Gracias por la pregunta y organizaré más esta parte para que quede más claro en el próximo reto.

Saludos!







No tienes permitido ver los links. Registrarse o Entrar a mi cuenta