Saya akan membagikan source code untuk menghitung penyusutan dalam Akuntansi, mungkin masih banyak kekurangan dalam program ini, kedepannya saya akan mencoba lebih baik lagi dalam memprogram
c=0
while c<1:
class depresiasi:
jk,_penyusutan,_hasil,y=[],[],[],0
def __init__(self,np,nr,umur):
self.np=np
self.nr=nr
self.umur=umur
def hasil(self):
p=self.np
for f in range(len(depresiasi._penyusutan)):
p-=depresiasi._penyusutan[f]
depresiasi._hasil.append(p)
return print("--------")
def sum_jk(self):
return sum(depresiasi.jk)
def tarif_p(self):
return (self.np-self.nr)/ang.sum_jk()
def penyusutan(self):
for i in range(len(depresiasi.jk)):
depresiasi._penyusutan.append(ang.tarif_p()*depresiasi.jk[i])
return print("--------")
try:
_np = int(input('Biaya Aktiva Tetap: '))
except (ValueError,TypeError):
print("Masukkan Angka dengan benar !1!1!1!")
print()
continue
try:
_nr=int(input("Nilai Sisa: "))
except (ValueError,TypeError):
print("Masukkan Angka dengan benar !1!1!1!")
print()
continue
try:
_umur=int(input("Umur Manfaat Aset(tahun): ") )
except (ValueError,TypeError):
print("Masukkan Angka dengan benar !1!1!1!")
print()
continue
print()
ang=depresiasi(_np,_nr,_umur)
while depresiasi.y<_umur:
print('Masukkan Tahun ke-',depresiasi.y+1)
_input=int(input('> '))
depresiasi.jk.append(_input)
depresiasi.y+=1
print(ang.penyusutan(),ang.hasil())
print()
try:
print('Tarif penyusutan = (',ang.np,'-',ang.nr,') /',ang.sum_jk(),'=',ang.tarif_p())
except ZeroDivisionError:
print("terdeteksi pembagian dengan Nol, hasil tidak akan ditampilkan")
print()
continue
print()
print("="*70)
print(' '*30,'jam kerja')
print("="*70)
print('tahun ke | jam operasi | Tarif/jam | Penyusutan | Nilai')
print("-"*70)
print(' 0',' '*53,_np)
print("-"*70)
try:
for s in depresiasi.jk:
print(' ',depresiasi.jk.index(s)+1,' '*12,s,' '*7,ang.tarif_p(),' '*6,depresiasi._penyusutan[depresiasi.jk.index(s)],' '*3,depresiasi._hasil[depresiasi.jk.index(s)])
print('-'*70)
except IndexError:
print(" 'KESALAHAN', indeks list berada diluar jangkauan!!! ")
print()
print()
print("Ingin Hitung lagi? tekan enter untuk mengulang, ketik 'x' lalu enter untuk keluar")
nanya=input('> ')
if nanya =='x':
c=1
''' for s in range(len(depresiasi.jk)):
print(' ',s,+1,' ',depresiasi.jk[s],' ',ang.tarif_p(),' ',depresiasi._penyusutan[s])'''
'''print(ang.penyusutan(),ang.hasil())'''