#include <stdio.h>
#include <math.h>
#include <stdlib.h>
/*sqrt(a)*/

main() {
float a,b,c,d,raiz;
int i;
/*char cont2;*/
 printf(" \n");
 printf(" \n");
 printf(" \n");
 printf("    ******************************************************************\n");
 printf("    **                 Hecho por Highfredo para frikyspain.         **\n");
 printf("    ****************************************************************** \n");
 printf(" \n");



printf("Este programa resuelve ecuaciones de segundo y primer grado de tal forma que\n");
printf("las ecuanciones serian: ax^2+bx+c o bx+c, siendo a, b y c numeros.\n");
printf(" \n");
printf("Detecta auntomaticamente si es de primer o segundo grado.\n");
   inicio:
   do
{
   printf("\n");
printf("Introduzca el numero >a< (0 si la ecuacion es de primer grado)  ");
   scanf("%f", &a ); fflush(stdin);
    printf(" \n");
printf("Introduzca el numero >b<:  ");
   scanf("%f", &b); fflush(stdin);
    printf(" \n");

printf("Introduzca el numero >c<  : ");
   scanf("%f", &c); fflush(stdin);
    printf(" \n");

 if(a==0) {
   if(b==0){
 printf("            No es una ecuacion de primer grado, b tiene que ser distinto de 0.");
   printf(" \n");
   printf(" \n");
   goto inicio;                            }
   else
 printf("            El resultado es: %f\n", -c/b);
 goto fin; }


 else


d=((b*b)-(4*a*c));

    if(d <= 0) {
  printf("La raiz es negativa, inserte otros valores\n");
  goto inicio;      }

raiz = sqrt(d);

printf("            El primer resultado es: %f\n", (-b+raiz)/(2*a));
printf("            El segundo resultado es: %f\n", (-b-raiz)/(2*a));
fin:
 printf(" \n");
  printf("Para continuar pulse 1, para salir pulse 2\n");
   scanf("%i",&i); fflush(stdin);
 }
while (i==1);

printf("                       ººººADIOSºººº\n");
printf(" \n");
 system("pause\n");}

