Engenharia Econômica
Engenharia econômica transforma seu microcomputador MSX em uma calculadora científica totalmente voltada para o cálculo de descontos, fluxo de caixa e análise de investimentos, um programa ideal para quem trabalha com aplicações ou financiamentos.
Teste o programa no WebMSX – The Online MSX Emulator
Empresa: Epcom Sistemas
Ano: 1985
Contribuição: Jeimes Uchoa
Código fonte
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 |
50 CLEAR 1000:DIM TL#(120) 70 ON ERROR GOTO 10000 100 COLOR 15,1,1:KEY OFF 105 FORK=1TO10:KEY K,CHR$(K):NEXTK 110 A1$=STRING$(6,195) 120 A2$=STRING$(6,192) 130 A3$=CHR$(198)+STRING$(4,32)+CHR$(222) 140 A4$=STRING$(32,32) 150 A5$=STRING$(38,197) 160 A6$=" ENGENHARIA ECONŽMICA 165 TB$(1)="P - PRINCIPAL":TB$(2)="S - MONTANTE":TB$(4)="i - TAXA":TB$(3)="n Ä PER‰ODO":TB$(5)="R - PRESTA€°O" 166 GF$="Æ"+STRING$(38,28)+"Æ"+STRING$(38,28)+"Æ":GG$=GF$+STRING$(38,28)+"Æ" 170 CLS:LOCATE 0,0:PRINT A5$:PRINT A6$:PRINT A5$ 180 LOCATE 0,4:PRINT A2$:PRINT A3$:PRINT A1$ 190 PRINT A2$:PRINT A3$:PRINT A1$ 200 PRINT A2$:PRINT A3$:PRINT A1$ 210 PRINT A2$:PRINT A3$:PRINT A1$ 220 PRINT A2$:PRINT A3$:PRINT A1$ 230 LOCATE 2,5:PRINT "F1":LOCATE 8,5:PRINT "Fun‡µes B sicas" 240 LOCATE 2,8:PRINT "F2":LOCATE 8,8:PRINT "Descontos" 250 LOCATE 2,11:PRINT "F3":LOCATE 8,11:PRINT "Fluxo de Caixa" 260 LOCATE 2,14:PRINT "F4":LOCATE 8,14:PRINT "An lise de Investimentos" 270 LOCATE 2,17:PRINT "F5":LOCATE 8,17:PRINT "T‚rmino de Uso do Sistema" 275 LOCATE0,20:PRINTA5$:PRINT" EPCOM SISTEMAS ":PRINTA5$ 280 LOCATE 37,20:PRINT CHR$(255):LOCATE0,20:A$=INPUT$(1):IFASC(A$)>5THEN280 290 ON ASC(A$) GOTO 300,6000,7000,8000,1000 300 CLS:LOCATE0,0:PRINTA5$:PRINT" FUN€´ES B„SICAS":PRINTA5$:LOCATE0,20:PRINTA5$:PRINT" HELIO SISTEMAS ":PRINTA5$ 302 LOCATE 10,7:PRINT"DESEJA CALCULAR ?" 304 LOCATE8,10:PRINT"[F1] P - PRINCIPAL":LOCATE8,11:PRINT"[F2] S - MONTANTE":LOCATE8,12:PRINT"[F3] n - PERIODO":LOCATE8,13:PRINT"[F4] i - TAXA":LOCATE8,14:PRINT"[F5] R - PRESTA€´ES":LOCATE8,15:PRINT"[F6] RETORNAR AO SELETOR" 306 LOCATE 37,20:PRINT CHR$(255):LOCATE 0,20:A$=INPUT$(1):IFASC(A$)>6THEN306 308 IFASC(A$)=6THEN170 310 IF ASC(A$)=3THEN390ELSEIFASC(A$)=4THEN430 312 CLS:LOCATE0,0:PRINTA5$:PRINT" FUN€´ES B„SICAS":PRINTA5$:LOCATE0,20:PRINTA5$:PRINT" HELIO SISTEMAS ":PRINTA5$ 314 LOCATE 0,6:PRINT"Calcular : "TB$(ASC(A$)) 316 ONASC(A$)GOTO320,350,390,430,460 318 LOCATE 0,13:PRINT"Informando :" 320 LOCATE20,10:PRINTTB$(2):LOCATE20,11:PRINTTB$(3):LOCATE20,12:PRINTTB$(4):LOCATE20,14:PRINTTB$(5):LOCATE20,15:PRINTTB$(3):LOCATE20,16:PRINTTB$(4):LOCATE13,11:PRINT"[F1]":LOCATE13,15:PRINT"[F2]" 321 LOCATE 18,10:PRINTGF$:LOCATE 18,14:PRINTGF$:LOCATE 0,13:PRINT"Informando :" 322 LOCATE 37,20:PRINT CHR$(255):LOCATE 0,20:B$=INPUT$(1):IFASC(B$)>2THEN322 324 GOSUB5000:IFASC(B$)=1THEN330ELSE340 330 GOSUB5020:GOSUB5030:GOSUB5040:GOSUB5060:GOSUB600 332 RD#=G#(1)/(((G#(3)/100)+1)^G#(2)) 334 LOCATE0,15:PRINTUSING"Resultado : ###,###,###,###.##";RD#:GOTO490 340 GOSUB5050:GOSUB5030:GOSUB5040:GOSUB5060:GOSUB600 342 RD#=G#(1)*(((1+(G#(3)/100))^G#(2))-1)/((G#(3)/100)*((1+(G#(3)/100))^G#(2))) 344 LOCATE0,15:PRINTUSING"Resultado : ###,###,###,###.##";RD#:GOTO490 350 LOCATE20,10:PRINTTB$(1):LOCATE20,11:PRINTTB$(3):LOCATE20,12:PRINTTB$(4):LOCATE20,14:PRINTTB$(5):LOCATE20,15:PRINTTB$(3):LOCATE20,16:PRINTTB$(4):LOCATE13,11:PRINT"[F1]":LOCATE13,15:PRINT"[F2]" 351 LOCATE 18,10:PRINTGF$:LOCATE 18,14:PRINTGF$:LOCATE 0,13:PRINT"Informando :" 352 LOCATE 37,20:PRINT CHR$(255):LOCATE 0,20:B$=INPUT$(1):IFASC(B$)>2THEN352 354 GOSUB5000:IFASC(B$)=1THEN360ELSE370 360 GOSUB5010:GOSUB5030:GOSUB5040:GOSUB5060:GOSUB600 362 RD#=G#(1)*((1+(G#(3)/100))^G#(2)) 364 LOCATE0,15:PRINTUSING"Resultado : ###,###,###,###.##";RD#:GOTO490 370 GOSUB5050:GOSUB5030:GOSUB5040:GOSUB5060:GOSUB600 372 RD#=G#(1)*(((1+(G#(3)/100))^G#(2))-1)/(G#(3)/100) 374 LOCATE0,15:PRINTUSING"Resultado : ###,###,###,###.##";RD#:GOTO490 380 LOCATE20,8:PRINTTB$(1):LOCATE20,9:PRINTTB$(2):LOCATE20,10:PRINTTB$(4):LOCATE20,12:PRINTTB$(1):LOCATE20,13:PRINTTB$(5):LOCATE20,14:PRINTTB$(4):LOCATE20,16:PRINTTB$(2):LOCATE20,17:PRINTTB$(5):LOCATE20,18:PRINTTB$(4) 381 LOCATE13,9:PRINT"[F1]":LOCATE13,13:PRINT"[F2]":LOCATE 13,17:PRINT"[F3]":LOCATE 18,8:PRINTGF$:LOCATE 18,12:PRINTGF$:LOCATE18,16:PRINTGF$:LOCATE 0,13:PRINT"Informando :" 382 B$=INPUT$(1):IFASC(B$)>3THEN382 384 GOSUB5000:ONASC(B$)GOTO390,400,410 390 GOSUB 5000:GOSUB5010:GOSUB5020:GOSUB5040:GOSUB5060:GOSUB600 392 RD#=LOG(G#(2)/G#(1))/LOG((G#(3)/100)+1) 394 LOCATE0,15:PRINTUSING"Resultado : ###,###.########";RD#:GOTO490 400 GOSUB5010:GOSUB5050:GOSUB5040:GOSUB5060:GOSUB600 402 STOP:RD#=LOG(G#(2)/G#(1))/LOG((G#(3)/100)+1) 404 LOCATE0,15:PRINTUSING"Resultado : ###,###.########";RD#:GOTO490 410 GOSUB5020:GOSUB5050:GOSUB5040:GOSUB5060:GOSUB600 420 LOCATE20,8:PRINTTB$(1):LOCATE20,9:PRINTTB$(2):LOCATE20,10:PRINTTB$(3):LOCATE20,12:PRINTTB$(1):LOCATE20,13:PRINTTB$(5):LOCATE20,14:PRINTTB$(3):LOCATE20,16:PRINTTB$(2):LOCATE20,17:PRINTTB$(5):LOCATE20,18:PRINTTB$(3) 421 LOCATE13,9:PRINT"[F1]":LOCATE13,13:PRINT"[F2]":LOCATE 13,17:PRINT"[F3]":LOCATE 18,8:PRINTGF$:LOCATE 18,12:PRINTGF$:LOCATE18,16:PRINTGF$:LOCATE 0,13:PRINT"Informando :" 422 B$=INPUT$(1):IFASC(B$)>3THEN422 424 GOSUB5000:ONASC(B$)GOTO430,440,450 430 GOSUB 5000:GOSUB5010:GOSUB5020:GOSUB5030:GOSUB5060:GOSUB600 432 RD#=(((G#(2)/G#(1))^(1/G#(3)))-1)*100 434 LOCATE0,15:PRINTUSING"Resultado : ###,###.########";RD#:GOTO490 440 GOSUB5010:GOSUB5050:GOSUB5030:GOSUB5060:GOSUB600 450 GOSUB5020:GOSUB5050:GOSUB5030:GOSUB5060:GOSUB600 460 LOCATE20,10:PRINTTB$(1):LOCATE20,11:PRINTTB$(3):LOCATE20,12:PRINTTB$(4):LOCATE20,14:PRINTTB$(2):LOCATE20,15:PRINTTB$(3):LOCATE20,16:PRINTTB$(4):LOCATE13,11:PRINT"[F1]":LOCATE13,15:PRINT"[F2]" 461 LOCATE 18,10:PRINTGF$:LOCATE 18,14:PRINTGF$:LOCATE 0,13:PRINT"Informando :" 462 LOCATE 37,20:PRINT CHR$(255):LOCATE 0,20:B$=INPUT$(1):IFASC(B$)>2THEN462 464 GOSUB5000:IFASC(B$)=1THEN470ELSE480 470 GOSUB5010:GOSUB5030:GOSUB5040:GOSUB5060:GOSUB600 472 RD#=G#(1)*(((G#(3)/100)+1)^G#(2))*(G#(3)/100)/((((G#(3)/100)+1)^G#(2))-1) 474 LOCATE0,15:PRINTUSING"Resultado : ###,###,###,###.##";RD#:GOTO490 480 GOSUB5020:GOSUB5030:GOSUB5040:GOSUB5060:GOSUB600 482 RD#=G#(1)*(G#(3)/100)/((((G#(3)/100)+1)^G#(2))-1) 484 LOCATE0,15:PRINTUSING"Resultado : ###,###,###,###.##";RD#:GOTO490 490 LOCATE 6,18:PRINT"TECLE [F5] PARA CONTINUAR" 492 LOCATE 37,20:PRINT CHR$(255):LOCATE 0,20:D$=INPUT$(1):IFASC(D$)<>5THEN492 494 GOTO 300 600 FORK=9TO11:G#(K-8)=0 610 LOCATE 17,K:PRINT "ÄÏ":LOCATE 21,K:L=18:GOSUB3000:G#(K-8)=VAL(G$) 620 NEXTK:RETURN 1000 CLS:LOCATE 0,0:PRINTA5$:PRINTA6$:PRINTA5$ 1002 LOCATE 7,10:PRINT"TRMINO DE USO DO SISTEMA" 1004 LOCATE 13,12:PRINT"AT A PRŠXIMA" 1006 LOCATE0,20:PRINTA5$:PRINT" HELIO SISTEMAS ":PRINTA5$ 1008 FORTE=1TO2000:END 3000 G$="" 3010 F$="":F$=INPUT$(1) 3020 IFASC(F$)=13THEN3060 3030 IFASC(F$)=8ORASC(F$)=29THENIFLEN(G$)=0THEN3010ELSEG$=LEFT$(G$,LEN(G$)-1):PRINTCHR$(8)" "CHR$(8);:GOTO3010 3040 IF(F$<"0"ORF$>"9")ANDF$<>"."THEN3010 3050 G$=G$+F$:PRINTF$;:F$="":IFLEN(G$)<16THEN3010 3060 IFLEN(G$)=0ORVAL(G$)=0THEN3010ELSELOCATE17,K:PRINT" ":RETURN 4000 A$=INPUT$(1):PRINTASC(A$):GOTO4000 5000 CLS:LOCATE0,0:PRINTA5$:PRINT" FUN€´ES B„SICAS":PRINTA5$ 5002 LOCATE 0,5:PRINT"Calcular : "TB$(ASC(A$)):LOCATE0,20:PRINTA5$:PRINT" HELIO SISTEMAS ":PRINTA5$ 5004 LOCATE 0,8:PRINTSTRING$(38,195):RETURN 5010 PRINT TB$(1) TAB(20)"[" TAB(37)"]":RETURN 5020 PRINT TB$(2) TAB(20)"[" TAB(37)"]":RETURN 5030 PRINT TB$(3) TAB(20)"[" TAB(37)"]":RETURN 5040 PRINT TB$(4) TAB(20)"[" TAB(37)"]":RETURN 5050 PRINT TB$(5) TAB(20)"[" TAB(37)"]":RETURN 5060 PRINT STRING$(38,192):RETURN 6000 CLS:LOCATE0,0:PRINTA5$:PRINT" DESCONTO ":PRINTA5$:LOCATE0,20:PRINTA5$:PRINT" HELIO SISTEMAS ":PRINTA5$ 6004 LOCATE 0,4:PRINTSTRING$(38,195) 6020 PRINT "S - VALOR DO T‰TULO" TAB(24)"[" TAB(37)"]" 6030 PRINT "i - TAXA DESCONTO" TAB(24)"[" TAB(37)"]" 6040 PRINT "n - PER‰ODO" TAB(24)"[" TAB(37)"]" 6050 PRINT "R - RECIPROCIDADE (%)" TAB(24)"[" TAB(37)"]" 6060 PRINT STRING$(38,192) 6070 FOR K=5 TO 8:G#(K-4)=0 6080 LOCATE 22,K:PRINT "ÄÏ":LOCATE 25,K:L=18:GOSUB 6500:G#(K-4)=VAL(G$) 6090 NEXTK:G#(4)=G#(1)*(G#(4)/100) 6100 DB#=G#(1)-(G#(1)*(1-G#(2)/100)^G#(3)) 6102 DR#=G#(1)-(G#(1)/(1+(G#(2)/100))^G#(3)) 6104 CB#=(((G#(1)-G#(4))/(G#(1)-DB#-G#(4)))^(1/G#(3)))-1:CB#=CB#*100 6106 CR#=(((G#(1)-G#(4))/(G#(1)-DR#-G#(4)))^(1/G#(3)))-1:CR#=CR#*100 6200 LOCATE 0,12:PRINT "BANC„RIO":LOCATE 0,16:PRINT "REAL":LOCATE 10,11:PRINT GF$:LOCATE 10,15:PRINT GF$ 6210 LOCATE 12,11:PRINT USING "DESCONTO : ####,###,###.##";DB# 6212 LOCATE 12,12:PRINT USING "ATUAL : ####,###,###.##";G#(1)-DB# 6214 LOCATE 12,13:PRINT USING "CUSTO DA OPERA€ŒO : ###.##";CB# 6216 LOCATE 12,15:PRINT USING "DESCONTO : ####,###,###.##";DR# 6218 LOCATE 12,16:PRINT USING "ATUAL : ####,###,###.##";G#(1)-DR# 6220 LOCATE 12,17:PRINT USING "CUSTO DA OPERA€°O : ###.##";CR# 6400 LOCATE 37,20:PRINT CHR$(255):LOCATE 6,19:PRINT"TECLE [F5] PARA CONTINUAR" 6402 D$=INPUT$(1):IFASC(D$)<>5THEN6402 6404 GOTO 170 6500 G$="" 6510 F$="":F$=INPUT$(1) 6520 IFASC(F$)=13THEN6560 6530 IFASC(F$)=8ORASC(F$)=29THENIFLEN(G$)=0THEN6510ELSEG$=LEFT$(G$,LEN(G$)-1):PRINTCHR$(8)" "CHR$(8);:GOTO6510 6540 IF(F$<"0"ORF$>"9")ANDF$<>"."THEN6510 6550 G$=G$+F$:PRINTF$;:F$="":IFLEN(G$)<12THEN6510 6560 IF(LEN(G$)=0ORVAL(G$)=0)ANDK<>8THEN LOCATE 25,K:PRINT STRING$(12,32):LOCATE 25,K:GOTO6500ELSELOCATE22,K:PRINT" ":RETURN 7000 CLS:LOCATE0,0:PRINTA5$:PRINT" FLUXO DE CAIXA ":PRINTA5$:LOCATE0,20:PRINTA5$:PRINT" EPCOM SISTEMAS ":PRINTA5$ 7004 LOCATE 0,5:PRINT "ATEN€°O !!!" 7006 LOCATE 0,8:PRINT "Poder±o ser inclu¡dos at‚ 120 lan‡a-":PRINT "mentos de Fluxo de Caixa. Para lan‡a-":PRINT "mentos de d‚bito, informe o valor com" 7008 PRINT "o sinal negativo na frente." 7010 LOCATE 0,13:PRINT "O c lculo da Taxa Interna de Retorno":PRINT "poder tomar algum tempo." 7012 LOCATE 0,16:PRINT "Confirme a execu‡±o (S/N) [ ]":LOCATE 27,16:A$=INPUT$(1):PRINT A$:IF A$="s" OR A$="S" THEN 7020 ELSE 170 7020 FOR K=0 TO 120:TL#(K)=0:NEXT K 7030 CLS:LOCATE0,0:PRINTA5$:PRINT" FLUXO DE CAIXA ":PRINTA5$:LOCATE0,20:PRINTA5$:PRINT" HELIO SISTEMAS ":PRINTA5$ 7032 FOR K=7 TO 14:LOCATE 0,K:PRINT STRING$(38,32):NEXT K 7035 LOCATE 0,7:PRINT "PER‰ODO [ ]":LOCATE 0,18:PRINT "PARA ENCERRAR DIGITE [999]" 7040 K=7:LOCATE 12,7:PRINT "ÄÏ":LOCATE 15,7:F%=3:GOSUB 7800:A=VAL(G$):IF A=999 THEN 7100 ELSE IF A>120 OR A<0 THEN 7040 7045 LOCATE 0,9:PRINT "VALOR [ ]":LOCATE 0,18:PRINT STRING$(38," ") 7050 K=9:LOCATE 12,9:PRINT "ÄÏ":LOCATE 15,9:F%=16:GOSUB 7800:TL#(A)=VAL(G$):GOTO 7032 7100 CLS:LOCATE0,0:PRINTA5$:PRINT" FLUXO DE CAIXA ":PRINTA5$:LOCATE0,20:PRINTA5$:PRINT" HELIO SISTEMAS ":PRINTA5$ 7105 LOCATE 0,10:PRINT "TAXA M‰NIMA DE RETORNO ÄÏ [ ]":K=10:F%=7:LOCATE 27,10:GOSUB 7800 7110 TX#=VAL(G$):TX#=TX#/100 7120 CLS:LOCATE0,0:PRINTA5$:PRINT" FLUXO DE CAIXA ":PRINTA5$:LOCATE0,20:PRINTA5$:PRINT" HELIO SISTEMAS ":PRINTA5$ 7125 LOCATE 0,8:PRINT "CALCULANDO VALOR PRESENTE L‰QUIDO" 7130 VL#=0:FOR K=0 TO 120 7135 IF TL#(K)=0 THEN 7145 7140 VL#=VL#+(TL#(K)/((1+TX#)^K)) 7145 NEXT K:IF ZZ=1 THEN ZZ=0:RETURN 7148 V1#=VL# 7150 LOCATE 0,10:PRINT "CALCULANDO TAXA INTERNA DE RETORNO" 7202 TX#=TX#*100 7206 IF VL#=0 THEN 7300 7207 IF VL#>0 THEN IF TA#-TX#-1=0 THEN TA#=TX#:TX#=TX#+.5:GOTO 7230 7208 IF VL#<0 THEN IF TA#-TX#+1=0 THEN TA#=TX#:TX#=TX#-.5:GOTO 7230 7209 TA#=TX#:IF VL#>0 THEN TX#=TX#+1 ELSE TX#=TX#-1 7210 GOSUB 7280:GOTO 7206 7220 IF VL#=0 THEN 7300 7222 IF VL#>0 THEN IF TA#-TX#-.1=0 THEN TA#=TX#:TX#=TX#+.05:GOTO 7250 7224 IF VL#<0 THEN IF TA#+TX#+.1=0 THEN TA#=TX#:TX#=TX#-.05:GOTO 7250 7226 TA#=TX#:IF VL#>0 THEN TX#=TX#+.1 ELSE TX#=TX#-.1 7230 GOSUB 7280:GOTO 7220 7240 IF VL#=0 THEN 7300 7242 IF VL#>0 THEN IF TA#-TX#-.01=0 THEN 7260 7244 IF VL#<0 THEN IF TA#+TX#+.01=0 THEN 7260 7246 TA#=TX#:IF VL#>0 THEN TX#=TX#+.01 ELSE TX#=TX#-.01 7250 GOSUB 7280:GOTO 7240 7260 GOTO 7300 7280 ZZ=1:VL#=0:TX#=TX#/100:GOSUB 7130 :TX#=TX#*100:RETURN 7300 CLS:LOCATE0,0:PRINTA5$:PRINT" FLUXO DE CAIXA ":PRINTA5$:LOCATE0,20:PRINTA5$:PRINT" HELIO SISTEMAS ":PRINTA5$ 7310 LOCATE 0,9:PRINT USING "VALOR PRESENTE LIQUIDO : ####,###.##";V1# 7320 LOCATE 0,11:PRINT USING "TAXA INTERNA DE RETORNO : ##,###.##";TX# 7400 LOCATE 37,20:PRINT CHR$(255):LOCATE 6,18:PRINT"TECLE [F5] PARA CONTINUAR" 7402 LOCATE 0,20:D$=INPUT$(1):IFASC(D$)<>5THEN7402 7404 GOTO 170 7500 GOTO 7500 7800 G$="" 7810 F$="":F$=INPUT$(1) 7820 IFASC(F$)=13THEN7860 7830 IFASC(F$)=8ORASC(F$)=29THENIFLEN(G$)=0THEN7810ELSEG$=LEFT$(G$,LEN(G$)-1):PRINTCHR$(8)" "CHR$(8);:GOTO7810 7840 IF(F$<"0"ORF$>"9")ANDF$<>"."ANDF$<>"-"THEN7810 7850 G$=G$+F$:PRINTF$;:F$="":IFLEN(G$)<F%THEN7810 7860 IFLEN(G$)=0THEN7810ELSELOCATE12,K:PRINT" ":RETURN 8000 CLS:LOCATE0,0:PRINTA5$:PRINT" INVESTIMENTOS ":PRINTA5$:LOCATE0,20:PRINTA5$:PRINT" HELIO SISTEMAS ":PRINTA5$ 8004 FOR K=7 TO 14:LOCATE 0,K:PRINT STRING$(38,32):NEXT K 8006 LOCATE 0,7:PRINT "CUSTO INICIAL [ ]" 8008 LOCATE 0,8:PRINT "VIDA ‹TIL [ ]" 8010 LOCATE 0,9:PRINT "VALOR RESIDUAL [ ]" 8011 LOCATE 10,11:PRINT "<< PER‰ODO >>" 8012 LOCATE 0,13:PRINT "RECEITA/DESPESA [ ]" 8014 LOCATE 0,14:PRINT "TAXA DO PER‰ODO [ ]" 8020 LOCATE 21,7:PRINT STRING$(16,32):K=7:LOCATE 18,7:PRINT "ÄÏ":LOCATE 21,7:F%=16:GOSUB 8800:G#(1)=-VAL(G$):IF G#(1)=0 THEN 8020 8030 LOCATE 21,8:PRINT STRING$(3,32):K=8:LOCATE 18,8:PRINT "ÄÏ":LOCATE 21,8:F%=3:GOSUB 8800:G#(2)=VAL(G$):IF G#(2)=<0 THEN 8030 8040 LOCATE 21,9:PRINT STRING$(16,32):K=9:LOCATE 18,9:PRINT "ÄÏ":LOCATE 21,9:F%=16:GOSUB 8800:G#(3)=VAL(G$):IF G#(3)=0 THEN 8040 8050 LOCATE 21,13:PRINT STRING$(16,32):K=13:LOCATE 18,13:PRINT "ÄÏ":LOCATE 21,13:F%=16:GOSUB 8800:G#(4)=VAL(G$):IF G#(4)=0 THEN 8050 8055 LOCATE 21,14:PRINT STRING$(6,32):K=14:LOCATE 18,14:PRINT "ÄÏ":LOCATE 21,14:F%=6:GOSUB 8800:G#(5)=VAL(G$):IF G#(5)=<0 THEN 8055 8060 VL#=G#(1) 8070 FOR K=1 TO G#(2) 8080 VL#=VL#+(G#(4)/((1+(G#(5)/100))^K)) 8090 NEXT K 8100 VL#=VL#+(G#(3)/((1+(G#(5)/100))^(G#(2)+1))) 8102 LOCATE 0,17:PRINT USING "RESULTADO : ###,###,###.##";VL# 8400 LOCATE 37,20:PRINT CHR$(255):LOCATE 6,19:PRINT"TECLE [F5] PARA CONTINUAR" 8402 LOCATE 0,20:D$=INPUT$(1):IFASC(D$)<>5THEN8402 8404 GOTO 170 8800 G$="" 8810 F$="":F$=INPUT$(1) 8820 IFASC(F$)=13THEN8860 8830 IFASC(F$)=8ORASC(F$)=29THENIFLEN(G$)=0THEN8810ELSEG$=LEFT$(G$,LEN(G$)-1):PRINTCHR$(8)" "CHR$(8);:GOTO8810 8840 IF(F$<"0"ORF$>"9")ANDF$<>"."ANDF$<>"-"THEN8810 8850 G$=G$+F$:PRINTF$;:F$="":IFLEN(G$)<F%THEN8810 8860 IFLEN(G$)=0THEN8810ELSELOCATE18,K:PRINT" ":RETURN 10000 RESUME 170 |