Результат выполнения операторов отношений и логических операторов имеет тип bool

В C# на равенство (==) и не равенство (!=) можно сравнивать все объекты (x==’a’).

Но операторы сравнения (<, >, <=, >=) можно применять только к типам, которые поддерживают только отношение упорядочения, т.е к числовым типам.

Например, x>2, z==0, Math.Sin(x)<=5.

Примеры8:

       int a, b;

       a = 3; b=3;

       if (a==b) Console.WriteLine("Переменные равны");

       Console.ReadKey();

 

       int a, b;

       a = 3; b=0;

       if (a==b) Console.WriteLine("Переменные равны");

       else if (a>=0) Console.WriteLine("Значение а неотрицательно");

       Console.ReadKey();

 

 

 


       int a, b;

       a = -3; b=0;

       if (a==b) Console.WriteLine("Переменные равны");

       else if (a>=0) Console.WriteLine("Значение а неотрицательно");

       else if (a<0) Console.WriteLine("Значение a отрицательно");

Console.ReadKey();

 

Операнды логических операций (&, |,!, ^) должны иметь тип bool.

Вычисление с использованием логических операций происходит по разрядно.

Логические операторы выполняют логические операции в соответствии с таблицей:

          

           операнды          лог. И        лог. ИЛИ       не Х1      исключающее ИЛИ

X1 X2 X1 & X2 X1 | X2 ! X1 X1 ^ X2
0 0 1 1 0 1 0 1 0 0 0 1 0 1 1 1 1 1 0 0 0 1 1 0

Сокращенные операторы && (И), || (ИЛИ). Различия между обычной и сокращенной версиями заключается в том, что при обычной версии вычисляются оба операнда, а при сокращенной версии второй операнд вычисляется только при необходимости.


Операторы присвоения

Задают новое значение переменной. Имя переменной и результат вычисления выражения должны быть одного типа или совместимыми по присвоению.

Присвоение бывает простое и сложное. При простом присвоении оператор состоит из одного символа (=). Синтаксис оператора:

ИмяПеременной = выражение;

 

Например,  x = x + 1;     

                y = Math.Sin(x);

Присваиваемое значение должно иметь тип, совпадающий с типом переменной, или допускающий неявное преобразование.

Пример9:

       int x=2; double y;

       y = x * x;

      Console.WriteLine("x={0} y={1}", x, y);

      Console.ReadKey();

 

В противном случае можно использовать явное преобразование, используя синтаксис:

ИмяПеременной = (тип переменной слева от =) выражение;

           

Пример10:

         

     double x = 2.5; float y=0;

     y = (float) (x * x);

    Console.WriteLine("x={0,4:f} y={1,4:f}", x, y);

    Console.ReadKey();

 

Пример11:

     double x = 2.5; int y=0;

     y = (int) (x * x);              // 6,25 округляется до 6        

     Console.WriteLine("x={0,5:f} y={1,5:f}", x, y);

    Console.ReadKey();

     

         

 

     // Приведение double в int ведет к потере дробной части (в примере 0,25)

 

Пример12:

     double n; int y;

     n=5;

     y = (int)(Math.Sqrt(n));

     Console.WriteLine("y= " +y);

     Console.ReadKey();

 

Пример13:

     byte b,y;

     b = 10;

     y = (byte)(b * b); //результат представляет выражение int и требует преобразование            

     Console.WriteLine("y: " +y);

    Console.ReadKey();

 

 

Оператор сложного присвоения состоит из нескольких знаков без разделителей. Правый символ – знак простого присвоения, слева дополнительные символы, указывающие на тип дополнительной операции, выполняемой перед присваиванием.

Составные операторы Действие
X += Y X = X + Y
X –= Y X = X – Y
X *= Y X = X * Y
X /= Y X = X / Y
X %= Y X = X % Y
X &= Y X = X & Y
X |= Y X = X | Y
X ^= Y X = X ^ Y

Преимущества составных операторов:

§ Составные операторы компактнее своих «длинных» эквивалентов.

§ Их наличие приводит к созданию более эффективного кода (т.к. операнд при этом вычисляется только один раз).

 

Примеры использования составных операторов:

x=x+10 может бать записано  x+=10

x=x–100 может бать записано   x–=100

Инструкции

Код приложений в C# состоит из инструкций (команд) с ключевыми словами и выражениями с операторами.

В инструкцию включают объявление переменных, присвоение значений, вызов методов, ветвление на один или другой блок кода, в зависимости от заданного условия.

Инструкция – строка кода, которая заканчивается точкой с запятой.

Блочная инструкция – набор инструкций в фигурные скобки { }. Программный блок представляет собой группирование двух и более инструкций заключенные в фигурные скобки. Последние могут содержать вложенные блоки { {…} }.

Используется для превращения группы операторов в один там, где по правилам языка может применяться только один оператор, а действий несколько.

Программные блоки не снижают динамику выполнения программ.

Пример использования однострочных инструкций и блок многострочной инструкции:

static void Main(string[] args)

   {

       int i, j, d;

       i=5;

       j=10;

       if (i!= 0)

       {

             Console.WriteLine("i не равно 0");

             d = j / i;

             Console.WriteLine("j/i равно "+ d);

       }      

       Console.WriteLine("Нажми клавишу Enter");

       Console.ReadKey();

   }

 

Второй вариант:

       int i, j, d;

       i=0;

       j=10;

       if (i!=0)

       {

           Console.WriteLine("i не равно 0");

           d = j / i;

           Console.WriteLine("j/i равно "+ d);

       }      

       Console.WriteLine("Нажми клавишу Enter");

       Console.ReadKey();

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: