Por que na depuração com variáveis do tipo double o valor apresentado ao posicionar o mouse sobre o operador "+" é o valor de armazenamento interno, e ao fazer o mesmo com o float, o valor apresentado é o mesmo exibido no console?
Ex:
double num1 = 10.10;
double num2 = 10.20;
Console.WriteLine(num1 + num2 == 20.30);
O valor da soma apresentado na depuração é 20.299999999999997.
Já quando realizada a depuração com as variáveis do tipo float, a soma apresentada é 20.3.
Qual o motivo dessa diferença, visto que se comparo ambas com 20.3 o retorno é false
? E por que motivo o tipo double não é capaz de armazenar o valor arredondado?
Agradeço desde já.