FoxToolBox Ver. 1.1 Copyright 1987,1988, BUZZWORDS Intl. INPUT FILE: APLAINA.PRG PRINTER IS OFF 1 **********APLAINA******* 2 SET TALK OFF 3 SET CONFIRM ON 4 SET ESCA ON 5 KIERROS = .T. 6 ÚÄÄDO WHILE KIERROS 7 ³ CLEAR 8 ³ STORE 0 TO APNRO,VSUMMA,VMARK,LUKU,VERT,ARSU,PROS 9 ³ STORE 0 TO SUMMA,AIKA,KORKO,TAPA,KERTA,VALI,TEST 10 ³ STORE 0 TO ERA,LAS,PREV,VUOSI,RATE,YHTMK,AMOUNT,ITEM,JOPO 11 ³ STORE ' ' TO VENT,KYSY,ODOT 12 ³ STORE 'N' TO VAST 13 ³ STORE 'E' TO MUU 14 ³ STORE 1 TO RIVI 15 ³ TESTI= .T. 16 ³ ÚÄÄDO WHILE TESTI 17 ³ ³ @ 4,17 TO 19,57 DOUBLE 18 ³ ³ @ 7,23 SAY 'Laina alenevalle p„„omalle' 19 ³ ³ @ 9,23 SAY 'Lainasumma ' GET SUMMA PICT '99999999' 20 ³ ³ @ 9,54 SAY 'Mk' 21 ³ ³ @ 11,23 SAY 'Korko ' GET KORKO PICT '99.99' 22 ³ ³ @ 11,51 SAY '%' 23 ³ ³ @ 13,23 SAY 'Maksuaika ' GET AIKA PICT '99' 24 ³ ³ @ 13,48 SAY 'Vuotta' 25 ³ ³ @ 15,23 SAY '2,4 Tai 12 Maksua/V ' GET KERTA PICT '99' 26 ³ ³ @ 17,23 SAY 'Muuttuva korko % K/E ' GET MUU 27 ³ ³ READ 28 ³ ³ ÚÄÄIF KERTA=12 .OR. KERTA=4 .OR. KERTA=2 29 ³ ³ ³ TESTI= .F. 30 ³ <==<==<==EXIT 31 ³ ³ ÃÄÄELSE 32 ³ ³ ³ @ 18,0 SAY 'Maksua/V t„ytyy olla 2,4 tai 12' 33 ³ ³ ³ WAIT 34 ³ ³ ³ @ 18,0 CLEAR TO 20,79 35 ³ <==<==<==LOOP 36 ³ ³ ÀÄÄENDI 37 ³ ÀÄÄENDDO 38 ³ ÚÄÄIF SUMMA=0 .OR. KORKO=0 .OR. AIKA=0 39 ³ ³ @ 18,0 SAY 'Vastauksessa summa,korko tai aika oli 0' 40 ³ ³ WAIT 41 ³ ³ CLEAR 42 <==<==<==EXIT 43 ³ ÀÄÄENDIF 44 ³ ÚÄÄIF KERTA=12 45 ³ ³ LUKU=KERTA 46 ³ ³ APNRO=.08333333 47 ³ ³ TAPA=AIKA*12 48 ³ ³ VERT=TAPA 49 ³ ÀÄÄENDIF 50 ³ ÚÄÄIF KERTA=4 51 ³ ³ LUKU=KERTA*2 52 ³ ³ APNRO=.25 53 ³ ³ TAPA=AIKA*4 54 ³ ³ VERT=TAPA 55 ³ ÀÄÄENDIF 56 ³ ÚÄÄIF KERTA=2 57 ³ ³ LUKU=KERTA*3 58 ³ ³ APNRO=.5 59 ³ ³ TAPA=AIKA*2 60 ³ ³ VERT=TAPA 61 ³ ÀÄÄENDIF 62 ³ ERA=SUMMA/TAPA ;lyhennys er„ 63 ³ JOPO=SUMMA ;jopo=j„ljell„ oleva p„„oma 64 ³ ARSU=((SUMMA+ERA)/2)*TAPA ;aritmeettinen summa 65 ³ PROS=(ARSU*KORKO*APNRO)/100 66 ³ @ 21,18 SAY 'N„yt”lle tai kirjoittimelle..N/K.. ' GET VAST 67 ³ READ 68 ³ ÚÄÄIF UPPE(VAST)='K' 69 ³ ³ @ 19,18 SAY 'Tulostus kirjoittimelle' 70 ³ ³ RIVI=1 71 ³ ³ SET DEVICE TO PRINT 72 ³ ÃÄÄELSE 73 ³ ³ CLEAR 74 ³ ³ RIVI=1 75 ³ ÀÄÄENDIF 76 ³ @ RIVI,1 SAY 'Laina alenevalle p„„omalle' 77 ³ RIVI=RIVI+1 78 ³ @ RIVI,1 SAY 'Lainasumma' 79 ³ @ RIVI,12 SAY SUMMA PICT '99999999.99' 80 ³ @ RIVI,24 SAY 'Mk' 81 ³ @ RIVI,30 SAY 'Laina-aika' 82 ³ @ RIVI,41 SAY AIKA PICT '99' 83 ³ @ RIVI,44 SAY 'Vuotta' 84 ³ RIVI=RIVI+1 85 ³ @ RIVI,1 SAY 'Korko' 86 ³ ÚÄÄIF UPPER(MUU)='E' 87 ³ ³ @ RIVI,11 SAY ROUND(PROS,0) PICT '999999999.99' 88 ³ ÀÄÄENDIF 89 ³ ÚÄÄIF .NOT. UPPER(MUU)='E' 90 ³ ³ @ RIVI,13 SAY '- - - - -' 91 ³ ÀÄÄENDIF 92 ³ @ RIVI,24 SAY '"' 93 ³ @ RIVI,30 SAY 'Maksutapa' 94 ³ @ RIVI,41 SAY KERTA PICT '99' 95 ³ @ RIVI,44 SAY 'Kertaa/vuosi' 96 ³ RIVI=RIVI+1 97 ³ @ RIVI,1 SAY 'Yhteens„' 98 ³ ÚÄÄIF UPPE(MUU)='E' 99 ³ ³ @ RIVI,11 SAY ROUND(PROS+SUMMA,0) PICT '999999999.99' 100 ³ ÀÄÄENDIF 101 ³ ÚÄÄIF .NOT. UPPE(MUU)='E' 102 ³ ³ @ RIVI,13 SAY '- - - - -' 103 ³ ÀÄÄENDIF 104 ³ @ RIVI,24 SAY '"' 105 ³ @ RIVI,30 SAY 'Maksuer„' 106 ³ @ RIVI,40 SAY ERA PICT '99999999.99' 107 ³ @ RIVI,52 SAY 'Mk' 108 ³ @ RIVI,56 SAY 'Korko' 109 ³ ÚÄÄIF UPPE(MUU)='E' 110 ³ ³ @ RIVI,62 SAY KORKO PICT '99.99' 111 ³ ³ @ RIVI,68 SAY '%' 112 ³ ÀÄÄENDIF 113 ³ ÚÄÄIF .NOT. UPPE(MUU)='E' 114 ³ ³ @ RIVI,62 SAY '- - - - -' 115 ³ ÀÄÄENDIF 116 ³ RIVI=RIVI+1 117 ³ @ RIVI,1 SAY REPLICATE("-",68) 118 ³ ÚÄÄIF UPPER(VAST)='N' 119 ³ ³ RIVI=RIVI+2 120 ³ ³ @ RIVI,1 SAY 'Tulostus on < RET > ,lopetus on L ' GET VENT 121 ³ ³ READ 122 ³ ³ ÚÄÄIF UPPE(VENT)='L' 123 ³ ³ ³ KIERROS= .F. 124 ³ ³ ³ CLEAR 125 <==<==<==<==EXIT 126 ³ ³ ÀÄÄENDIF 127 ³ ³ CLEAR 128 ³ ³ RIVI=1 129 ³ ÃÄÄELSE 130 ³ ³ RIVI=RIVI+2 131 ³ ÀÄÄENDIF 132 ³ @ RIVI,1 SAY 'Er„' 133 ³ @ RIVI,11 SAY 'Korko' 134 ³ @ RIVI,24 SAY 'Maksu' 135 ³ @ RIVI,33 SAY 'Lainasumma' 136 ³ RIVI=RIVI+1 137 ³ ÚÄÄIF UPPE(VAST)='N' 138 ³ ³ @ 2,0 CLEAR TO 24,79 139 ³ ÀÄÄENDIF 140 ³ ASKEL = .T. 141 ³ ÚÄÄDO WHILE ASKEL 142 ³ ³ RATE=(JOPO*APNRO*KORKO)/100 143 ³ ³ ITEM=ERA+RATE 144 ³ ³ YHTMK=ITEM+YHTMK 145 ³ ³ VSUMMA=ITEM+VSUMMA 146 ³ ³ AMOUNT=RATE+AMOUNT 147 ³ ³ VMARK=RATE+VMARK 148 ³ ³ TAPA=TAPA-1 149 ³ ³ LAS=LAS+1 150 ³ ³ VALI=VALI+1 151 ³ ³ TEST=TEST+1 152 ³ ³ @ RIVI,1 SAY LAS PICT '999' 153 ³ ³ @ RIVI,5 SAY ROUND(RATE,1) PICT '99999999.99' 154 ³ ³ @ RIVI,18 SAY ROUND(ITEM,1) PICT '99999999.99' 155 ³ ³ @ RIVI,32 SAY ROUND(JOPO,1) PICT '99999999.99' 156 ³ ³ ÚÄÄIF VALI=KERTA 157 ³ ³ ³ VUOSI=VUOSI+1 158 ³ ³ ³ RIVI=RIVI+2 159 ³ ³ ³ @ RIVI,5 SAY INT(ROUND(VMARK,0)) PICT '99999999' 160 ³ ³ ³ @ RIVI,18 SAY INT(ROUND(VSUMMA,0)) PICT '99999999' 161 ³ ³ ³ @ RIVI,32 SAY VUOSI PICT '99' 162 ³ ³ ³ ÚÄÄIF VUOSI=1 163 ³ ³ ³ ³ @ RIVI,36 SAY 'Vuosi' 164 ³ ³ ³ ³ ÚÄÄIF .NOT. UPPE(MUU)='E' 165 ³ ³ ³ ³ ³ @ RIVI,44 SAY 'korko' 166 ³ ³ ³ ³ ³ @ RIVI,50 SAY KORKO PICT '99.99' 167 ³ ³ ³ ³ ÀÄÄENDIF 168 ³ ³ ³ ÃÄÄELSE 169 ³ ³ ³ ³ @ RIVI,36 SAY 'Vuotta' 170 ³ ³ ³ ³ ÚÄÄIF .NOT. UPPE(MUU)='E' 171 ³ ³ ³ ³ ³ @ RIVI,44 SAY 'korko' 172 ³ ³ ³ ³ ³ @ RIVI,50 SAY KORKO PICT '99.99' 173 ³ ³ ³ ³ ÀÄÄENDIF 174 ³ ³ ³ ÀÄÄENDIF 175 ³ ³ ³ ÚÄÄIF UPPE(VAST)='K' 176 ³ ³ ³ ³ RIVI=RIVI+1 177 ³ ³ ³ ÀÄÄENDIF 178 ³ ³ ³ STORE 0 TO VMARK,VSUMMA,VALI 179 ³ ³ ³ ÚÄÄIF .NOT. UPPE(MUU)='E' .AND. UPPE(VAST)='N' 180 ³ ³ ³ ³ ÚÄÄIF .NOT. LAS=VERT 181 ³ ³ ³ ³ ³ RIVI=RIVI+2 182 ³ ³ ³ ³ ³ @ RIVI,12 SAY 'Korko %' 183 ³ ³ ³ ³ ³ @ RIVI,20 SAY VUOSI+1 PICT '99' 184 ³ ³ ³ ³ ³ @ RIVI,23 SAY 'ksi. vuodeksi 'GET KORKO PICT '99.99' 185 ³ ³ ³ ³ ³ READ 186 ³ ³ ³ ³ ³ ÚÄÄIF KORKO=0 187 ³ ³ ³ ³ ³ ³ ASKEL= .F. 188 ³ <==<==<==<==<==<==EXIT 189 ³ ³ ³ ³ ³ ÀÄÄENDIF 190 ³ ³ ³ ³ ÀÄÄENDIF 191 ³ ³ ³ ³ ÚÄÄIF .NOT. LAS=VERT .AND. .NOT. UPPE(VAST)='K' 192 ³ ³ ³ ³ ³ @ 2,0 CLEAR TO 24,79 193 ³ ³ ³ ³ ³ RIVI=2 194 ³ ³ ³ ³ ³ TEST=0 195 ³ ³ ³ ³ ÀÄÄENDIF 196 ³ ³ ³ ÀÄÄENDIF 197 ³ ³ ³ ÚÄÄIF .NOT. UPPE(MUU)='E' .AND. UPPE(VAST)='K' 198 ³ ³ ³ ³ SET DEVICE TO SCREEN 199 ³ ³ ³ ³ PREV=RIVI 200 ³ ³ ³ ³ CLEAR 201 ³ ³ ³ ³ RIVI=10 202 ³ ³ ³ ³ ÚÄÄIF .NOT. LAS=VERT 203 ³ ³ ³ ³ ³ @ RIVI,12 SAY 'Korko %' 204 ³ ³ ³ ³ ³ @ RIVI,20 SAY VUOSI+1 PICT '99' 205 ³ ³ ³ ³ ³ @ RIVI,23 SAY 'ksi. vuodeksi 'GET KORKO PICT '99.99' 206 ³ ³ ³ ³ ³ READ 207 ³ ³ ³ ³ ³ CLEAR 208 ³ ³ ³ ³ ³ ÚÄÄIF KORKO=0 209 ³ ³ ³ ³ ³ ³ ASKEL= .F. 210 ³ <==<==<==<==<==<==EXIT 211 ³ ³ ³ ³ ³ ÀÄÄENDIF 212 ³ ³ ³ ³ ÀÄÄENDIF 213 ³ ³ ³ ³ RIVI=PREV 214 ³ ³ ³ ³ SET DEVICE TO PRINT 215 ³ ³ ³ ÀÄÄENDIF 216 ³ ³ ÀÄÄENDIF 217 ³ ³ JOPO=JOPO-ERA 218 ³ ³ ÚÄÄIF LAS , L on lopetus ' GET KYSY 222 ³ ³ ³ ³ READ 223 ³ ³ ³ ³ ÚÄÄIF UPPE(KYSY)='L' 224 ³ ³ ³ ³ ³ ASKEL= .F. 225 ³ <==<==<==<==<==EXIT 226 ³ ³ ³ ³ ÀÄÄENDIF 227 ³ ³ ³ ³ @ 2,0 CLEAR TO 24,79 228 ³ ³ ³ ³ RIVI=2 229 ³ ³ ³ ³ TEST=0 230 ³ ³ ³ ÀÄÄENDIF 231 ³ ³ ³ RIVI=RIVI+1 232 ³ ³ ÀÄÄENDIF 233 ³ ³ ÚÄÄIF TAPA=0 234 ³ ³ ³ ASKEL= .F. 235 ³ <==<==<==EXIT 236 ³ ³ ÃÄÄELSE 237 ³ <==<==<==LOOP 238 ³ ³ ÀÄÄENDIF 239 ³ ÀÄÄENDDO 240 ³ ÚÄÄIF UPPE(KYSY)='L' 241 ³ ³ @ RIVI,1 CLEAR TO 24,79 242 ³ ÀÄÄENDIF 243 ³ RIVI=RIVI+1 244 ³ @ RIVI,5 SAY REPL(CHR(45),24) 245 ³ RIVI=RIVI+1 246 ³ @ RIVI,1 SAY 'Yht' 247 ³ @ RIVI,4 SAY INT(ROUND(AMOUNT,0)) PICT '999999999' 248 ³ @ RIVI,17 SAY INT(ROUND(YHTMK,0)) PICT '999999999' 249 ³ ÚÄÄIF UPPE(KYSY)='L' 250 ³ ³ @ RIVI,30 SAY 'huom. Yht.summat lopetuskohtaan saakka' 251 ³ ÀÄÄENDIF 252 ³ ÚÄÄIF UPPE(VAST)='K' 253 ³ ³ RIVI=0 254 ³ ³ @ RIVI,1 SAY ' ' 255 ³ ³ SET DEVICE TO SCREEN 256 ³ ÀÄÄENDIF 257 ³ RIVI=RIVI+1 258 ³ ÚÄÄIF UPPE(VAST)='K' 259 ³ ³ @ 22,7 SAY 'Jatko on Y ' GET ODOT 260 ³ ³ READ 261 ³ ÀÄÄENDIF 262 ³ ÚÄÄIF UPPE(VAST)='N' 263 ³ ³ RIVI=RIVI+1 264 ³ ³ @ RIVI,7 SAY 'Jatko on Y ' GET ODOT 265 ³ ³ READ 266 ³ ÀÄÄENDIF 267 ³ ÚÄÄIF UPPE(ODOT)='Y' 268 ³ ³ CLEAR 269 <==<==<==LOOP 270 ³ ÃÄÄELSE 271 ³ ³ KIERROS = .F. 272 ³ ³ CLEAR 273 ³ ÀÄÄENDIF 274 ÀÄÄENDDO 275 <==return 276 ************** 277 *Formatted by: FoxToolBox Ver. 1.1 on October 4, 1995 at 10:32 PM. FoxToolBox found 0 error(s), 0 warning(s), 277 lines.