Estou desenvolvendo um pequeno programa em C para calcular Raiz.
Consigo calcular quando delta=0 ou quando é menor que zero, mas quando a necessidade de calcular o programa me mostra resultados estranhos.
peço a coloboração de todos. obrigado.
o codigo e esse.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int a,b,c;
float D,E,d,x1,x2;
char op;
printf("...Calcule os valores de (D)delta, X(1),X(2)\n");
printf("Digite um valor valido para ----> 'a'\n");
scanf("%d",&a);
printf("Digite um valor valido para ----> 'b'\n");
scanf("%d",&
;
printf("Digite um valor valido para ----> 'c'\n");
scanf("%d",&c);
D=b*b-4*a*c;
printf("\n\n");
printf("Coeficientes:\na=%d\nb=%d\nc=%d\n",a,b,c);
printf("O VALOR DE DELTA E:%.0f",D);
printf("\n\n\n");
if(D==0)
{
x1=b*(-1);
x2=b*(-1);
x1=x1/(2*a);
x2=x2/(2*a);
x1=D-x1;
x2=D+x2;
printf("\nDELTA:%.0f\n",D);
printf("x1:%.0f\nx2:%.0f\n",x1, x2);
}
else if(D>0)
{
E=D/2*a;
D=sqrt(d);
x1 = b*(-1) + E;
x2 = b*(-1) - E;
printf("\nDELTA:%.0f\n",D);
printf("x1:%.0f\nx2:%.0f\n",x1, x2);
}
if(D<0)
{
printf("-->ATENCAO<--\n");
printf("-->NUMERO NAO POSSUI RAIZ REAL\n");
printf("\n\n\n");
}
system ("PAUSE");
return 0;
}
Opá boa noite ! Sinto muito pela demora... mas sou sua unica salvação pelo jeito ! uadhausdhuas
brincadeira... bom vamos lá, eu reparei que voce usou algumas coisas que nao sao necessarias nesse programa, coisas que só vao ocupar espaço de memoria em seu computado. tipo uma variavel char ... que voce nao esta usando e outros comandos hehehe
falo amigao ate a proxima...
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int a,b,c;
int D,E,d,x1,x2;
printf("...Calcule os valores de (D)delta, X(1),X(2)\n");
printf("Digite um valor valido para ----> 'a'\n");
scanf("%d",&a);
printf("Digite um valor valido para ----> 'b'\n");
scanf("%d",&

;
printf("Digite um valor valido para ----> 'c'\n");
scanf("%d",&c);
D=b*b-4*a*c;
printf("\n\n");
printf("Coeficientes:\na=%d\nb=%d\nc=%d\n",a,b,c);
printf("O VALOR DE DELTA E:%d",D);
printf("\n\n\n");
if(D==0)
{
x1=b*(-1);
x2=b*(-1);
x1=x1/(2*a);
x2=x2/(2*a);
x1=D-x1;
x2=D+x2;
printf("\nDELTA:%d\n",D);
printf("x1:%d\nx2:%d\n",x1, x2);
}
else if(D>0)
{
x1 = b*(-1) + E;
x2 = b*(-1) - E;
printf("\nDELTA:%d\n",D);
printf("x1:%.0f\nx2:%d\n",x1, x2);
}
if(D<0)
{
printf("-->ATENCAO<--\n");
printf("-->NUMERO NAO POSSUI RAIZ REAL\n");
printf("\n\n\n");
}
system ("PAUSE");
return 0;
}