ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ. ЛЕКЦИЯ 2
Выражения, операторы, инструкции • • • Выражения в языке программирования. Операторы и операции в C#. Арифметические операции. Операции сравнения. Логические операции. Битовые операции. Порядок выполнения операций. Конкатенация строк. Перегрузка операторов. Инструкции языка С#. Условия. Циклы. 2
Выражение в языке программирования • Это сочетание значений, констант, операторов, переменных и функций, удовлетворяющее синтаксическим правилам языка. • Язык программирования обеспечивает вычисление выражения и получение некого значения в качестве результата. • Выражение выполняется в соответствии с приоритетом операторов. • Результат выполнения выражения может быть числовым, логическим, строковым или значением 3 любого другого типа.
Арность операторов • Унарный: -x • Бинарный: x+y • Тернарный: x ? y : z 4
Арифметические операции • • Сложение: + Вычитание: Умножение: * Деление: / Остаток от деления: % Унарный минус: Унарный плюс: + 5
Сложение, вычитание, умножение, деление, остаток от деления int double double 6
Остаток от деления 7
Проверка кратности • x % 2 == 0 => x – четное число • x % 3 == 0 => x делится на 3 без остатка • x % k == 0 => x делится на k без остатка 8
Соответствие множеств 9
Операции сравнения • • • Равно: == Не равно: != Больше: > Меньше: < Больше или равное: >= Меньше или равно: <= 10
Логические операции • • Отрицание: ! Или: || И: && Или*: | И*: & true false 11
Логическое И && 12
Логическое ИЛИ II 13
Бит и байт 14
Двоичная система 15
Битовые операции • • • Отрицание: ~ Или: | И: & Исключающее ИЛИ (XOR): ^ Сдвиг влево: << Сдвиг вправо: >> 16
Отрицание ~ • ~0 = 1 • ~1 = 0 17
ИЛИ | • • 0|0=0 0|1=1 1|0=1 1|1=1 18
И& • • 0&0=0 0&1=0 1&0=0 1&1=1 19
Исключающее ИЛИ ^ • • 0^0=0 0^1=1 1^0=1 1^1=0 20
Сдвиг влево << 21
Сдвиг вправо >> 22
Примеры битовых операций • • • ~0000 0110 = 1111 1001 0010 1100 | 0111 0001 = 0111 1101 0010 1100 & 0111 0001 = 0010 0000 0010 1100 ^ 0111 0001 = 0101 1101 0010 1100 << 1 = 0101 1000 0010 1100 >> 1 = 0001 0110 23
Присваивание • • • = += -= *= /= %= &= |= ^= >>= <<= 24
Инкремент и декремент • • x++ ++x x---x 25
Тернарный оператор 26
Оператор ? ? A ? ? B эквивалентно (A == null) ? B : A 27
Условный оператор 28
Оператор выбора 29
Цикл while 30
Инструкции перехода • break • continue 31
Цикл for 32
Бесконечный цикл • for(; ; ) • while(true) 33
for > while • for( ; i < 10 ; ) … • while( i < 10 ) … 34