El programa resuelve una Ecuación Cuadrática (de segundo Grado) a partir de la fórmula general.

Simplemente se deben de ingresar los coeficientes del término cuadrático [Variable A], lineal [Variable b] y el término independiente [Variable C]

[c]
/*
ax2 + bx + c = 0
*/

#include <stdio.h>
#include <math.h>
#include <stdlib.h>
main ()
{

char aleido [5], bleido[5], cleido[5];
float a, b, c, desc, x1, x2;
char espera [1], respuesta;
int valido;

do
{
printf ("\n \n Programa para resolver ecuaciones cuadraticas. \n \n");

do
{
valido = 0;
printf ("\n \n \t Proporcione los coeficientes a,b,c: ");
scanf (" %s %s %s", aleido, bleido, cleido);
if (atof (aleido) && atof (bleido) && atof (cleido))
{
printf ("\n \n \t \t Entradas validas \n");
a = atof (aleido);
b = atof (bleido);
c = atof (cleido);
printf ("\n \t valores leidos a = %f, b= %f, c= %f \n", a, b, c);
valido = 1;
}
else
printf ("\n \n \t Los valores proporcionados no son validos \n ");
} while (! valido);

desc = (pow (b,2) – 4 * a * c);
if (desc < 0 )
printf ("\n \n La ecuacion %f x2 + %f x + %f c, no tiene soluciones reales, \n \t decriminante = %f ", a, b, c, desc);
else
if (a == 0)
printf ("\n \n La ecuacion %f x2 + %f x + %f c, no es cuadratica, \n \t coeficiente de x2 = %f ", a, b, c, a);
else
{
x1 = (-b + sqrt (desc)) / (2 * a);
x2 = (-b – sqrt (desc)) / (2 * a);
printf ("\n Las raices de %f x2 + %f x + %f c son: \n \n \t x1 = %f, x2 = %f \n", a , b , c, x1, x2);
}
printf ("\n \n \t ¿Desea resolver otra ecuacion S/N?: ");
scanf (" %c", &respuesta);
}
while (respuesta == ‘S’ || respuesta == ‘s’);
printf ("\n \n TERMINO PROGRAMA (Proporcione cualquier caracter para terminar)");
scanf (" %s", espera);

}

[/c]

Deja un comentario