Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Условный оператор. Переключатель.Оператор перехода



Условный оператор:

if (выражение) оператор1; else оператор2 ;

Если значение выражения истинное, выполняется оператор1, иначе оператор2.,а затем оператор , стоящий за if,т.е.if задаёт альтернативу: выполнить оператор1 или оператор2, это полный if.

Возможен и короткий: if (выражение) оператор1 ; он задаёт альтернативу: выполнить или нет оператор1.Если на месте оператора1 или оператора2 нужно поставить группу операторов, их заключают в фигурные скобки и синтаксически группа становится одним оператором.

if (выражение) { оператор; … оператор;}; еlse { оператор;… оператор; };

Если вместо оператора1 стоит условный оператор, то необходимо разрешить возникающую иногда коллизию; для этого есть правило: else всегда относится к ближайшему if.

If (a>b) if (x>c)m=0; else m=1;

Возможны 2 толкования этого оператора:

If (a>b) if (x>c)m=0; else m=1; (1) – по правилу это работает.

If (a>b) if (x>c)m=0; else m=1; (2)

Если нужен (2), можно If (a>b) {if (x>c)m=0;} else m=1;

Примеры.

Int a,b,m;

a)if (a>b) m=a; else m=b;

b)m=a; if (b>m) m=b;

c)m=(a+b)/2 + fabs(a-b)/2;

Все три примера решают такую задачу m=max(a,b); , но вариант a) более наглядный.

Переключатель реализует развилку на несколько направлений.

Общий вид оператора:

Switch (выражение)

{Case константное_выражение1 :[оператор; … оператор;]

Case константное_выражение2 :[оператор; … оператор;]

………………………………………………………………………………………Case константное_выражениеN :[оператор; … оператор;]

[default : оператор; … оператор;]

}

Переключающее выражение – селектор – целого типа или символьного. Константные выражения приводятся к типу селектора. Все константные выражения в одном переключателе должны иметь различные значения.

Switch передает управление тому из операторов, помеченных с помощью case, у которого значение константного выражения совпадает со значением селектора. Если же оно не совпадает ни с одним из константных выражений, то управление получает оператор, помеченный меткой default. Если нет группы default, то оператор Switch не выполнит ничего. Если выбран некоторый вариант и группа его операторов выполняется, последним в этой группе часто стоит оператор break, который выполняет выход из переключателя на оператор, следующий за ним. Если группа операторов варианта не заканчивается оператором break и никуда не передаёт управление, то выполняется группа операторов следующего варианта. #include <iostream>

using namespace std;

int main()

{int n=10,c;

for(c=10;c<18;c++)

{switch (c%n)

{case 0:cout <<"monday\n"; break;

case 1:cout <<"tusday\n"; break;

case 2:cout <<"wednesday\n"; break;

case 3:cout <<"thursday\n"; break;

case 4:cout <<"friday\n"; break;

case 5:cout <<"saturday\n"; break;

case 6:cout <<"sunday\n"; break;

default:cout <<"noday\n";

}} return 0; }

Замечание. Оператор break в составе другого оператора выполняет выход из этого другого оператора на оператор, следующий за ним.

Основные операции языка С++

(по убыванию приоритетов, в группе приоритеты одинаковые)

Олерация. Действие
  Унарные операции
++ -- Sizeof ~ ! - + & * new delete (тип) Увеличение на 1 Уменьшение на 1 Размер Поразрядное отрицание Логическое отрицание Унарный минус (арифметическое отрицание) Унарный плюс Взятие адреса Разыменование Выделение динамической памяти Освобождение динамической памяти Преобразование типа
  Бинарные и тернарная операции
* / % Умножение Деление Остаток от деления
+ - сложение вычитание
<< >> Сдвиг влево Сдвиг вправо
< <= > >= Меньше Меньше или равно больше Больше или равно
== != Равно Не равно
& Поразрядная конъюнкция (И)
^ Поразрядная исключающее ИЛИ
| Поразрядная дизъюнкция (ИЛИ)
&& Логическое И
|| Логическое ИЛИ
? : Условная операция (тернарная)
= *= /= %= += -= <<= >>= &= |= ^= Присваивание Умножение с присваиванием Деление с присваиванием Остаток от деления с присваиванием Сложение с присваиванием Вычитание с присваиванием Сдвиг влево с присваиванием Сдвиг вправо с присваиванием Поразрядное И с присваиванием Поразрядное ИЛИ с присваиванием Поразрядное исключающее ИЛИ с присваиванием
, Последовательное вычисление

 

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.