Tengo un problema con una calculadora de prestamos escrita en lenguaje "Javascript" pero no logro hacerla funcionar, si alguien me puediera indicar en donde estoy mal, le agradeceria de antemano.
la funcion principal de la calculadora, es ingresar el monto solicitado, el numero de mes y el numero de quincena (del mes). y que como salida obtenga el numero de quincenas que hay que pagar, numero de pagos, cantidad a pagar quincenal, cantidad total generada por el prestamo e intereses generados.
el fallo esta en la parte de calcular.
Adjunto el codigo
Código:
<head> <script language="javascript"> var amount, apr, n, m, payment, npy, tablebuilt=false; function calculate(){ var d=document.f; amount=d.amount.value; apr=3.4; n=d.n.value; m=d.m.value; npy=24; if( (amount!='') && (n!='') && (m!='') && (apr!='') && (npy!='') ){ tmp=Math.pow((1+(apr/100/npy)), { if( (m=2:((n*2)+1); if(n*2);} payment=(amount*tmp*(apr/100/npy))/(tmp-1); if((!isNaN(payment))&&(payment!=Number.POSITIVE_INFINITY)&&(payment!=Number.NEGATIVE_INFINITY)){ d.payment.value=round(payment); d.totpaid.value=round(payment*n*npy); d.intpaid.value=round((payment*n*npy)-amount); }else alert('Error:\nOne or more fields contain data\nwhich cannot be used in the\ncalculation.'); }else alert('Error:\nYou did not provide enough data.'); } function round(val){ tmp=Math.round(val*100)/100+''; if(tmp.indexOf('.')==-1)tmp+='.00'; else if(tmp.length-tmp.indexOf('.')==2)tmp+='0'; return tmp; } function resetall(){ var d=document.f; d.amount.value=''; d.apr.value='3.4'; d.n.value=''; d.m.value=''; d.npy.value=''; d.payment.value=''; d.totpaid.value=''; d.intpaid.value=''; d.amount.focus(); } </script> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> <style type="text/css"> <!-- .style3 {font-size: 36px} --> </style> </head> <body> <form name="f"> <table border="1" align="center" cellpadding="4"> <tr><td width="507" height="311"><table border="0"> <tr> <td colspan="2" align="center"><div align="left"><strong>Ingresa la información sobre el préstamo sin comas o puntos</strong></div></td> </tr> <!-- Do NOT CHANGE the next line. --> <tr> <td width="397">Cantidad del prestamo:</td><td width="102"><b>$</b> <input type="text" name="amount" size="10"></td></tr> <tr> <!-- Do NOT CHANGE the next line. --> <td>Tasa:</td> <td>3.4<b> %</b></td> </tr> <!-- Do NOT CHANGE the next line. --> <tr> <td>Fecha de solicitud (mes,quincena):</td> <td> <label> <select name="n" id="select"> <option>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> <option>6</option> <option>7</option> <option>8</option> <option>9</option> <option>10</option> <option>11</option> <option>12</option> </select> </label><label> <select name="m" id="select"> <option>1</option> <option>2</option> </select> </label></td> </tr> <tr><td align="center" colspan="2"><input type="button" value="Calcular" onClick="calculate()">*******<input name="Reset" type="reset" onClick="resetall()" value="Reset"></td></tr> <tr><td colspan="2"><hr></td></tr> <td>Plazo para pagar (quincenas):</td> <td><input type="text" size="10" name="payment"></td> </tr> <tr> <td>Pagos por año (quincenales):</td> <td><input type="text" size="10" name="payment"></td> <tr> <td>Cantidad a pagar mensual:</td><td><b>$</b> <input type="text" size="10" name="payment2" /></td> </tr> <tr> <td>Pago total del prestamo:</td> <td><b>$</b> <input type="text" size="10" name="totpaid"></td></tr> <tr> <td>Intereses generados:</td><td><b>$</b> <input type="text" size="10" name="intpaid"></td></tr> </table></td></tr></table> </form> </p> </body> </html>