Buenas, pues estoy haciendo unos ejercicios de estructuras secuenciales (de lo más sencillo que hay) y en un algoritmo que a simple vista parece fácil me he quedado atascado.
El algoritmo en cuestión es este:
spoiler#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
/8. Escribir un programa para calcular las soluciones de una ecuación cuadrática/
double a=0,b=0,c=0,x1=0,x2=0, raiz=0;
//Entrada de datos
printf("Introduzca el valor de a:\n");
fflush(stdout);
scanf("%lf",&a);
printf("Introduzca el valor de b:\n");
fflush(stdout);
scanf("%lf",&b);
printf("Introduzca el valor de c:\n");
fflush(stdout);
scanf("%lf",&c);
//Calculo
raiz=(double)b*b-4*a*c;
raiz=sqrt(raiz);
x1=((-b)+raiz)/(2*a);
x2=((-b)-raiz)/(2*a);
//Mostrar el resultado
printf("El valor de x1 es: %lf\n",x1);
printf("El valor de x2 es: %lf\n",x2);
//FIN
system("pause");
return(0);
}
El problema viene al ejecutarlo, me aparece esto en consola:
Introduzca el valor de a:
5
Introduzca el valor de b:
3
Introduzca el valor de c:
4
Presione una tecla para continuar . . .
El valor de x1 es: -1.#IND00
El valor de x2 es: -1.#IND00
¿Cuál puede ser la causa de este error? Muchas gracias