Esto esta mejor no???
No me da errores, pero no resuleve bien, voy a repasarlo a ver...
#include<stdio.h>
#include<math.h>
float discrpos(float m, float n, float q, float *r);
float discrneg(float m, float n, float q, float *r);
float discrnull(float m, float n);
int main(){
float a=0,b=0,c=0,di=0,l,A,B;
printf("Solucion a la ecuacion de tipo ax2+bx+c=0\n");
printf("Dame el valor de a\n");
scanf("%d",&a);
printf("Dame el valor de b\n");
scanf("%d",&b);
printf("Dame el valor de c\n\n");
scanf("%d",&c);
di=b*b-(4*a*c);
if(di>0)
{
A = discrpos(a,b,di,&l);
printf("x1=%d y x2=%d",A,l);
}
else if(di<0)
{
A = discrneg(a,b,di,&l);
printf("x1=%d y x2=%d",A,l);
}
else
{
A = discrnull(a,b);
printf("x1=x2=x=%d",A);
}
}
float discrpos(float m, float n, float q, float *r){
float x1=0,x2=0;
x1 = (-n+sqrt(q))/(2*m);
x2 = (-n-sqrt(q))/(2*m);
*r = x2;
return x1;
}
float discrneg(float m, float n, float q, float *r){
float x1=0,x2=0;
x1 = -n/(2*m);
x2 = sqrt(q)/(2*m);
*r = x2;
return x1;
}
float discrnull(float m, float n){
float x1=0,x2=0;
x1 = x2 = -n/(2*m);
return x1;
}
No me da errores, pero no resuleve bien, voy a repasarlo a ver...
#include<stdio.h>
#include<math.h>
float discrpos(float m, float n, float q, float *r);
float discrneg(float m, float n, float q, float *r);
float discrnull(float m, float n);
int main(){
float a=0,b=0,c=0,di=0,l,A,B;
printf("Solucion a la ecuacion de tipo ax2+bx+c=0\n");
printf("Dame el valor de a\n");
scanf("%d",&a);
printf("Dame el valor de b\n");
scanf("%d",&b);
printf("Dame el valor de c\n\n");
scanf("%d",&c);
di=b*b-(4*a*c);
if(di>0)
{
A = discrpos(a,b,di,&l);
printf("x1=%d y x2=%d",A,l);
}
else if(di<0)
{
A = discrneg(a,b,di,&l);
printf("x1=%d y x2=%d",A,l);
}
else
{
A = discrnull(a,b);
printf("x1=x2=x=%d",A);
}
}
float discrpos(float m, float n, float q, float *r){
float x1=0,x2=0;
x1 = (-n+sqrt(q))/(2*m);
x2 = (-n-sqrt(q))/(2*m);
*r = x2;
return x1;
}
float discrneg(float m, float n, float q, float *r){
float x1=0,x2=0;
x1 = -n/(2*m);
x2 = sqrt(q)/(2*m);
*r = x2;
return x1;
}
float discrnull(float m, float n){
float x1=0,x2=0;
x1 = x2 = -n/(2*m);
return x1;
}