Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

silvarudo

funções iguais em C++ e Delphi

Recommended Posts

Falaí gente.

 

Seguinte fiz essa função em Delphi:

 

function Basic.calc(idx: Single; num1, num2: Single): Single;

begin

result := idx * (num1 - idx * num2);

end;

 

E tô tentando implementar a mesma em C++:

 

double Basic::calc(double idx, double num1, double num2)

{

return idx * (num1 - idx * num2);

}

 

mas o resultado é bem diferente. Não sou muito bom em C++ e não consigo ver o que tá errado.

Alguem saberia?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu já tinha colocado os dois tipos mas não resolveu.

Descobri o problema ou acho que descobri.

 

Acontece que na chamada da função eu colocava:

 

calc(x, 10/100, 32/1000, 23/100);

 

no delphi funciona,

mas em C++ parece que quando dividimos um inteiro por outro, o retorno é um inteiro, ou seja, na operação o número é arredondado, diferente do pascal que para dividir dois inteiro temos que usar o comando "div".

Obrigado pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.