s3Eva_IIT2007_T1 Depreciación por suma de dígitos

Ejercicio: 3Eva_IIT2007_T1 Depreciación por suma de dígitos

Propuesta de solución en Python:

# ICM00794-Fundamentos de Computación - FCNM-ESPOL
# 3Eva_IIT2007_T1 Depreciación por suma de dígitos
import numpy as np

articulo = input('nombre articulo: ')
anios = int(input('años a depreciar: '))
valor = float(input('valor inicial: '))

# PROCEDIMIENTO
suma = 0
contador = anios
while not(contador<1):
    suma = suma+contador
    contador = contador-1

# vector depreciacion
deprecia = np.zeros(anios+1, dtype=float)
deprecia[0] = 0
contador = anios
fila = 1
while not(contador<1):
    deprecia[fila] = valor*(contador/suma)
    contador = contador-1
    fila = fila+1

actual = np.zeros(anios+1,dtype=float)
fila = 0
actual[0] = valor
fila = 1
while not(fila>anios):
    actual[fila] = actual[fila-1]-deprecia[fila]
    fila = fila+1
    
print(deprecia)
print(' El valor actual por anio es:')

# SALIDA
fila = 0
print(' anio:   valor:')
while not(fila>anios):
    print(str(fila)+' | '+str(actual[fila]))
    fila = fila+1

resultado del algoritmo

nombre articulo: vehiculo
años a depreciar: 5
valor inicial: 10000
[   0.  3333.33333333 2666.66666667  2000.  1333.33333333
  666.66666667]
 El valor actual por anio es:
 anio:   valor:
0 | 10000.0
1 | 6666.666666666667
2 | 4000.0000000000005
3 | 2000.0000000000005
4 | 666.6666666666672
5 | 5.684341886080801e-13
>>>