ВУЗ:
Составители:
Рубрика:
69 
      q = p*m + n%m; 
      if (q == n)  Console.WriteLine("q=n"); 
      else    Console.WriteLine("q!=n"); 
      double   x = 7, y = 3, u, v, w; 
      u = x/y; 
      v = u*y; 
      w = x%y; 
      if (v == x)  
          Console.WriteLine("v=x"); 
      else 
          Console.WriteLine("v!=x"); 
      decimal   d1 = 7, d2 = 3, d3, d4, d5; 
      d3 = d1/d2; 
      d4 = d3*d2; 
      d5 = d1%d2; 
      if (d4 == d1)  
          Console.WriteLine("d4=d1"); 
      else  
          Console.WriteLine("d4!=d1"); 
    } //Ariphmetica 
При проведении вычислений в двух первых случаях проверяемое условие 
оказалось истинным, в третьем – ложным. Для целых типов можно исходить из 
того, что равенство n = n/m*m + n%m истинно. Для типов с плавающей точкой 
выполнение точного равенства x = x/y*y следует считать скорее случайным, а не 
закономерным событием. Законно невыполнение этого равенства, как это имеет 
место при вычислениях с фиксированной точкой. 
4.3.5. Операции отношения 
Операции отношения можно просто перечислить – в объяснениях они не 
нуждаются. Всего операций 6: ==, !=, <, >, <=, >= .  
4.3.6. Операции сдвига 
Операции  сдвига  вправо «>>» и  сдвига  влево «<<» особенно  полезны, 
если данные рассматриваются как строка битов. Результатом операции является 
сдвиг строки битов влево или вправо на K разрядов. В применении к обычным 
целым положительным числам сдвиг вправо равносилен делению нацело на 2K, 
а  сдвиг  влево - умножению  на  2K.  Для  отрицательных  чисел  сдвиг  влево  и 
деление  дают  разные  результаты,  отличающиеся  на  единицу.  В  языке C# 
операции сдвига определены только для некоторых целочисленных типов – int, 
uint, long, ulong. Величина сдвига должна иметь тип int. Вот пример применения 
этих операций: 
    /// <summary> 
    /// операции сдвига 
Страницы
- « первая
- ‹ предыдущая
- …
- 63
- 64
- 65
- 66
- 67
- …
- следующая ›
- последняя »
