Esa operación está mal planteada. Tienes que poner paréntesis.
Actualmente tienes esto:
Y quieres lograr esto:
Ahora hay 2 problemas: no hay raiz cuadrada de números negativos, que ha de ser el problema que tenías, y no se divide entre 0.
Así que:
-Si a y b son 0, error.
-Si a es 0 y b no, como dijo boctulus: -c/b
-Si b es 0 y a no: sqrt(-c/a), comprobando que -c/a sea positivo o cero.
-Si a y b son distintos de 0, la fórmula, salvo que b*b-4*a*c sea negativo, en tal caso error.
Actualmente tienes esto:
Código [Seleccionar]
-b + ( (sqrt(b*b-4*a*c) / 2) *a)
Y quieres lograr esto:
Código [Seleccionar]
(-b + sqrt(b*b-4*a*c) ) / (2*a)
Ahora hay 2 problemas: no hay raiz cuadrada de números negativos, que ha de ser el problema que tenías, y no se divide entre 0.
Así que:
-Si a y b son 0, error.
-Si a es 0 y b no, como dijo boctulus: -c/b
-Si b es 0 y a no: sqrt(-c/a), comprobando que -c/a sea positivo o cero.
-Si a y b son distintos de 0, la fórmula, salvo que b*b-4*a*c sea negativo, en tal caso error.