jlukinha 0 Denunciar post Postado Junho 11, 2014 Olá, pessoal. Eu estou tendo um problema com esse programa, no qual eu tentei criar uma função (fun2g) que calcule as raízes de uma função do segundo grau, pra exercitar. No entanto, quando eu digito os valores correspondentes a uma função qualquer do segundo grau, o programa retorna raízes como "17234e-036" ou algo parecido. O programa abaixo funciona. Mas se os "/* */" forem apagados, as condições do if não são respeitadas, e eu gostaria de saber porque isso acontece. #include <iostream> #include <stdlib.h> #include <stdio.h> #include <math.h> using namespace std; double fun2g( double a, double b, double c, double d, double x, double x1, double x2){ d=(( b*b )-( 4*a*c )); x=sqrt(d); x1=(-b+x)/(a+a); x2=(-b-x)/(a+a); if(d<0){ cout<<"A(s) Raiz(es) da funcao nao pertence(m) ao conjunto dos numeros reais."<<endl; return 0; } else cout<<endl<<"A(s) raiz(es) e/sao "<<x1<<" e "<<x2<<" ."<<endl<<endl; } int main() { double a,b,c,d,x,x1,x2; cout<<"Digite o valor de 'a'."<<endl; cin>>a; cout<<endl<<"Digite o valor de 'b'."<<endl; cin>>b; cout<<endl<<"Digite o valor de c"<<endl; cin>>c; fun2g(a,b,c,d,x,x1,x2); /* if(d<0){ cout<<"A(s) Raiz(es) da funcao nao pertence(m) ao conjunto dos numeros reais."<<endl; return 0; } else cout<<endl<<"A(s) raiz(es) e/sao "<<x1<<" e "<<x2<<" ."<<endl<<endl; */ } Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Junho 12, 2014 Vamos lá... Primeiro decida se vc quer escrever em C ou C++. Tem header das duas linguagens aí... A variável d não tem valor definido em nenhum lugar (a declaração não necessariamente define um valor -- isso não é Java). Ela vai ter um valor aleatório que estiver na posição de memória na qual ela for alocada. Se a tua função está dizendo que retorna um double, retorne um double. PS: é a segunda vez que edito post p/ colocar o código entre as tags code e ao salvar, o resto do texto que a pessoa escreveu some. Isso está me irritando... Compartilhar este post Link para o post Compartilhar em outros sites