using System.Diagnostics;
namespace CH03
{
class Program
{
static void Main(string[] args)
{
decimal decimalNumber = 4.2m;
double doubleNumber1 = 0.1f * 42f;
double doubleNumber2 = 0.1d * 42d;
float floatNumber = 0.1f * 42f;
Trace.Assert(decimalNumber != (decimal)doubleNumber1);
System.Console.WriteLine("{0} != {1}", decimalNumber, (decimal)doubleNumber1);
Trace.Assert((double)decimalNumber != doubleNumber1);
System.Console.WriteLine("{0} != {1}", (double)decimalNumber, doubleNumber1);
Trace.Assert((float)decimalNumber != floatNumber);
System.Console.WriteLine("(float){0}m != {1}f", (float)decimalNumber, floatNumber);
Trace.Assert(doubleNumber1 != (double)floatNumber);
System.Console.WriteLine("{0} != {1}", doubleNumber1, (double)floatNumber);
Trace.Assert(doubleNumber1 != doubleNumber2);
System.Console.WriteLine("{0} != {1}", doubleNumber1, doubleNumber2);
Trace.Assert(floatNumber != doubleNumber2);
System.Console.WriteLine("{0}f != {1}d", floatNumber, doubleNumber2);
Trace.Assert((double)4.2f != 4.2d);
System.Console.WriteLine("{0}f != {1}d", (double)4.2f, 4.2d);
Trace.Assert(4.2f != 4.2d);
System.Console.WriteLine("{0}f != {1}d", 4.2f, 4.2d);
System.Console.ReadKey(true);
}
}
}