<html> <script> baskara = function(a, b, c) { var r1 = (-b+Math.sqrt(b*b-4*a*c))/(2*a); var r2 = (-b-Math.sqrt(b*b-4*a*c))/(2*a); var array = [r1, r2]; return array; } raiz_eq_grau_3 = function(a, b, c, d) { if(a==0) return baskara(b, c, d)[0] var m = - b/3*a; var menosk1k2 = - Math.pow((b*b)/(9*a*a) - c/(3*a), 3); var k1Maisk2 = -2*(b*b*b/27*a*a*a) + (b*c/3*a*a) - (d/a); var raizes = baskara(-1, k1Maisk2, menosk1k2 ); var r_k1 = (raizes[0]>0? Math.pow(raizes[0], 1/3) : -Math.pow(-raizes[0], 1/3) ); var r_k2 = (raizes[1]>0? Math.pow(raizes[1], 1/3) : -Math.pow(-raizes[1], 1/3) ); return ( r_k1 + r_k2 + m); } calcular = function() { var a = parseFloat(document.getElementById('a').value); var b = parseFloat(document.getElementById('b').value); var c = parseFloat(document.getElementById('c').value); var d = parseFloat(document.getElementById('d').value); document.getElementById('resultado').value = raiz_eq_grau_3(a, b, c, d) ; } </script> <body> Coeficiente a: <input type="text" id="a" value="1"/><br> Coeficiente b: <input type="text" id="b" value="0"/><br> Coeficiente c: <input type="text" id="c" value="-1"/><br> Coeficiente d: <input type="text" id="d" value="-1"/><br> <button onclick="calcular();">Click me</button><br> resultado: <input type="text" id="resultado" /><br> </body> </html>
sábado, 5 de julho de 2014
Soluções para equações de 3º grau em JavaScript
Para quem tiver interesse em visualizar a dedução pode acessar este pdf: PDF
Nenhum comentário:
Postar um comentário