Ключевое слово double используется для обозначения простого типа для хранения 64-разрядных значений с плавающей запятой. Точность значения – 15-16 знаков после запятой.
Число в переменной типа double можно представить как 1001.10011001.
Для того, чтобы принудительно указать, что целое число должно обрабатываться как double, используется суффикс d или D. Например,
double w = 3D;
Очень распространенные "грабли", на которые рано или поздно наступает практически любой разработчик, это деление на переменную типа double. Сравните результаты деления целого числа на целое и на double.
Деление целого на целое:
for (int i = 1; i < 5; i++) { double qq = i / 3; Console.WriteLine("{0}/3 = {1}", i, qq); }
Результатом работы программы будет:
1/3 = 0
2/3 = 0
3/3 = 1
4/3 = 1
Деление целого числа на double:
for (int i = 1; i < 5; i++) { double qq = i / 3d; Console.WriteLine("{0}/3 = {1}", i, qq); }
Результатом деления целого числа на double будет:
1/3 = 0,333333333333333
2/3 = 0,666666666666667
3/3 = 1
4/3 = 1,33333333333333