• 1
    Entrada y salida de datos
    • Tareas
  • 2
    Condiciones
    • Tareas
  • 3
    Bucle for
    • Tareas
  • 4
    Cadenas de texto
    • Tareas
  • 5
    Bucle while
    • Tareas
  • 6
    Listas
    • Tareas
  • 7
    Matrices 2D
    • Tareas
  • 8
    Diccionarios
    • Tareas
  • 9
    Conjuntos
    • Tareas
  • 10
    Funciones y recursión
    • Tareas
  • к

Lección 10. Functions and recursion

Dificultad:

иконка человека красный иконка человека белая иконка человека зеленая Pythonlib

Tarea«Sistema de caché»

💻 Python
La empresa desarrolla software para cálculos científicos. Muchas operaciones se realizan repetidamente con los mismos parámetros, lo que ralentiza el sistema. Es necesario crear una clase CACHEDCALCULATOR que almacene en caché los resultados de las operaciones matemáticas. RN
La clase debe soportar cuatro operaciones: Suma (Add), Resta (Sub), Multiplicación (Mul) y División (Div). Al llamar repetidamente a la operación con los mismos parámetros, el resultado debe tomarse de la caché. La clase debe llevar estadísticas sobre la cantidad de operaciones realizadas y la cantidad de accesos a la caché.
rn
Después de todas las operaciones, el programa debe mostrar los resultados de todos los cálculos de manera ordenada, y luego las estadísticas del uso de la caché.

Formato de entrada

La primera línea contiene el número n, el número de operaciones. Las siguientes n líneas contienen operaciones en el formato: "Operación Número1", donde la operación es una de Add, Sub, Mul, Div

Formato de salida

los resultados de todas las operaciones de manera ordenada, cada uno en una nueva línea. Luego la línea con estadísticas en el formato: "Operations: X, Cache Hits: Y", donde X es el número total de operaciones, Y - el número de apelaciones a la Caché

Ejemplo

Entrada

6
Add 5 3
Mul 2 4
Add 5 3
Div 10 2
Mul 2 4
Sub 7 1

Salida

5.0
6.0
8.0
8.0
8.0
8.0
Operaciones: 6, Aciertos de caché: 2

Pista

There will be no clue here, decide for yourself!

main.py
Prueba 1
Prueba 2
Prueba 3
Prueba 4
Prueba 5
Prueba 6
Prueba 7
Prueba 8
Prueba 9
Prueba 10
Solución del desarrollador

🎉 ¡Felicidades! 🎉

¡Has resuelto la tarea brillantemente! Era un reto difícil, pero encontraste la solución correcta. ¡Estás un paso más cerca de dominar la programación! Sigue así, cada etapa superada te hace más fuerte.

AD

Publicidad

red-snake blue-snake green-snake

Ejecutando tu código...

Asistente de IA

¡Hola! Soy tu asistente de programación. Hazme cualquier pregunta sobre Python — puedo explicarte funciones, métodos y ayudarte con la tarea actual.