In [1]:
#declaramos nuestras variables
#T: tiempo en años
#N: periodos por años
T, N = var('T,N')

#fijamos el capital inicial c, la tasa de interes r y las cifras que se mostraran en pantalla
c=400
r=0.06
cifras=10

#fijamos el plazo en años
N=1
T=5

#imprimimos la información ingresada
pretty_print("capital inicial c=", c)
pretty_print("tasa de interés anual r=",r.n(digits=3))
pretty_print("plazo de inversión T=",T)
pretty_print("en este script usaremos ", cifras, " cifras para imprimir los números")

#True : se imprimen los plazos más comunes
#False: omitimos su impresión
imprimircomunes=True

#periodos más comunes
comunes = {"anual":1, "semestral":2, "trimestral":4, "mensual":12, "diario":360}

if imprimircomunes:
    for periodo in comunes:
        N=float(comunes[periodo])
        pretty_print(periodo, ": N=", N)
        pretty_print("C(", T, ")=",c,"(1+(", r.n(digits = 3), "/", N, "))^(", N,"*", T, ")=", (c*(1+(r/N))^(N*T)).n(digits=cifras))

#False: no se imprimen los periodos de alta frecuencia
#True: si se imprimen
imprimirextremos=False

extremos={"por hora": 360*24, "por minuto":360*24*60, "por segundo":360*24*60*60}

if imprimirextremos:
    for periodo in extremos:
        N=extremos[periodo]
        pretty_print(periodo, ": N=", N)
        pretty_print("C(",T, ")=",c,"(1+(", r.n(digits = 3), "/", N, "))^(", N,"*", T, ")=", (c*(1+(r/N))^(N*T)).n(digits=cifras))


#imprimimos el interes compuesto        
pretty_print("Interes compuesto continuamente: ", LatexExpr("N \Rightarrow \infty"))
pretty_print("C(", T, ")=",c, "exp(", r.n(digits=3), "*", T, ")=", c*exp(r*T).n(digits=cifras))