#include <iostream>
#include <cmath>
using namespace std;
int main ()
{
float v;
cout<<1/3.0<<endl;
v=1/3.0;
cout<<v<<endl;
return 0;
}
resultado para os dois casos: 0.33333
Erro de palmatória. O número 3 (ou no 1 ou os dois) devem ser dados a conhecer como não inteiros, isto é, como 1.0 e/ou 3.0. Senão temos 0 para as duas saídas no programa, se pelo menos um deles não for considerado 'float'.
O compilador tem razão em C++, respeitando as suas regras.
Ok. Obrigado pela ajuda.
↧