Если мы выполним следующий код С# в консольном приложении, мы получим сообщение как The sums are Not equal
.
Если мы выполним его после раскола строки System.Console.WriteLine()
, мы получим сообщение как The sums are equal
.
static void Main(string[] args)
{
float f = Sum(0.1f, 0.2f);
float g = Sum(0.1f, 0.2f);
//System.Console.WriteLine("f = " + f + " and g = " + g);
if (f == g)
{
System.Console.WriteLine("The sums are equal");
}
else
{
System.Console.WriteLine("The sums are Not equal");
}
}
static float Sum(float a, float b)
{
System.Console.WriteLine(a + b);
return a + b;
}
Какова фактическая причина такого поведения?