Comparação de ponto flutuante [duplicado]
Esta pergunta já tem uma resposta aqui:
Exemplos de imprecisão de pontos flutuantes 7 respostasint main()
{
float a = 0.7;
float b = 0.5;
if (a < 0.7)
{
if (b < 0.5) printf("2 are right");
else printf("1 is right");
}
else printf("0 are right");
}
Eu esperava que a saída desse código fosse0 are right
. Mas, para minha consternação, a saída é1 is right
porque