Huy pues tienes algunas inconsistencias ...
1) Cada instrucción debes terminarla con
;
2) El valor de un control lo toma por default como cadena, entonces para garantizar que te lo tome como número multiplícalo por
1. éste puede ser un posible error, ya que en la parte que tienes
1+vptic_i podría estarlo más bien concatenando
3) Te sugiero que uses en lugar del antiguo método de acceso a los campos (document.calfin.vptic_m) el estándar
document.getElementById( 'vptic_m' )
Mira si yo uso esto en tu función, me da el resultado que dices:
Código:
function potencia()
{
//creando variables
var vptic_m = document.getElementById( 'vptic_m' ).value;
var vptic_i = document.getElementById( 'vptic_i' ).value;
var vptic_n = document.getElementById( 'vptic_n' ).value;
var vptic_p = document.getElementById( 'vptic_p' );
//garantizando valores numéricos
vptic_m *= 1;
vptic_i *= 1;
vptic_n *= 1;
var vptic_result = vptic_m / Math.pow( 1 + vptic_i, vptic_n );
vptic_p.value = vptic_result;
}
Usé los siguientes controles:
Código HTML:
a: <input type="text" id="vptic_m" /><br />
b:<input type="text" id="vptic_i" /><br />
c:<input type="text" id="vptic_n" /><br />
<button onclick="potencia();">
calcula
</button><br />
resultado:<input type="text" id="vptic_p" /><br />
Sé que lo requerías hace algún tiempo, espero que te sirva aunque sea como referencia para futuros proyectos, suerte