Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

Подписываем
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Предоплата всего
Подписываем
PAGE 1
Л.р.4: «Операторы выбора в С++»
Лабораторная работа № 4
Тема: Операторы выбора в С++
Цель: понимать как работают операторы выбора, для чего используются и какой их синтаксис написания.
Теоретический материал
Операторы выбора это операторы управления потоком выполнения программы. К операторам выбора относят:
Синтаксис условного оператора с единственным выбором [if () {}]:
Запись для одного оператора при выполнении условия |
Запись для нескольких операторов при выполнении условия |
if ( условие ) оператор_1; |
if ( условие ) { оператор_1; оператор_2; … оператор_n; }; |
Синтаксис условного оператора с двойным выбором [if () {} else {}]:
Запись для одного оператора при выполнении условия |
Запись для нескольких операторов при выполнении условия |
if ( условие ) оператор_1; else оператор_2; |
if ( условие ) { оператор_1; оператор_2; … оператор_n; } else { оператор_n+1; оператор_n+2; … оператор_m; }; |
Оператором может быть любая команда или арифметическое выражение. Что касается условия, то оно должно быть логическим. Условие даёт ответ либо ложь, либо истину. Для написания условия необходимо знать, какие допустимы операции для использования, которые представлены в таблице 4.1.
Таблица 4.1: Операции, используемые в задании условия
Операция |
Название |
< |
меньше |
> |
больше |
< = |
меньше или равно |
> = |
больше или равно |
= = |
равно |
! = |
не равно |
В логическом условии использование вместо двойного знака равенства = = один знак = будет являться логической ошибкой, так как вместо того чтобы сравнивать переменную с другим значением мы вместо этого присвоим это значение.
Условный оператор с двойным выбором if()else можно записать в следующем виде: ()?():(). В таблице 4.2 приведены аналогичные действия, но различными способами записи.
Таблица 4.2: Пример использования if()else и ()?():()
if()else |
()?():() |
int x = 0, y = 0; cin>>x>>y; |
|
if(x>y) { cout<<”x больше y \n”; } else { cout<<”y больше или равно x \n”; } |
(x>y)?(cout<<”x больше y \n”;):(cout<<”y больше или равно x \n”;) |
Иногда необходимо написать сложное логическое условие, для этого используются следующие логические операции:
|| |
логическое ИЛИ |
&& |
логическое И |
Например, необходимо выяснить, попадает ли введенное с клавиатуры число в диапазон [-89, 78]?
int x=0;
cin>>x;
if((x>=-89)&&(x<=78))
cout<<”Число попадает в указанный диапазон \n”;
else
cout<<” Число не попадает в указанный диапазон \n”;
Кроме условных операторов единственного и двойного выборов существует оператор switch, который предназначен для множественного выбора.
Синтаксис записи оператора switch.
switch (переключающее_выражение)
{
case константное_выражение_1: операторы_1;
case константное_выражение_2: операторы_2;
…
case константное_выражение_N: операторы_N;
default:операторы;
}
Ход работы
НАЧАЛО
объявление целочисленной переменной
приглашение для ввода числа
ввод числа с клавиатуры
если число == 10
выводим “Да подходит.”
выводим на экран “Пока, до скорой встречи.”
КОНЕЦ
Обратите внимание, что вывод слов «Пока до скорой встречи» должно происходить в любом случае, независимо от результата проверки.
if(perem = = 10)
cout<<”Да подходит.”;
cout<<”Пока, до скорой встречи.”;
1 |
#іnclude <іostream.h> |
2 |
іnt mаіn() |
3 |
{ |
4 |
int pеrеm; |
5 |
сout<<”Еntеr perem = ”; |
6 |
сin>>perem; |
7 |
if(perem = = 10) |
8 |
cоut<<”Да подходит.”; |
9 |
соut<<”Пока, до скорой встречи.”; |
10 |
rеturn (-890); |
11 |
} |
1 |
#іnclude <іostream.h> |
2 |
іnt mаіn() |
3 |
{ |
4 |
int pеrеm; |
5 |
сout<<”Еntеr perem = ”; |
6 |
сin>>perem; |
7 |
if(perem = = 10) |
8 |
{ |
9 |
cоut<<”Да подходит.”; |
10 |
соut<<”Пока, до скорой встречи.”; |
11 |
} |
12 |
rеturn (-890); |
13 |
} |
В 8-й строке добавляем открывающуюся фигурную скобку, а в 11 строке добавляем закрывающуюся фигурную скобку.
НАЧАЛО
объявление первого целого числа (Х)
объявление второго целого числа (У)
ввод первого числа
ввод второго числа
если Х больше У, то
вывод на экран “макс = Х =” значение числа Х
иначе
выводим на экран “макс = У =” значение числа У
вывод на экран текста “Пока, до скорой встречи”
КОНЕЦ
1 |
#іnclude <іostream.h> |
2 |
іnt mаіn() |
3 |
{ |
4 |
int Х,У; |
5 |
сout<<”Еntеr Х = ”; |
6 |
сin>>perem; |
7 |
сout<<”Еntеr У = ”; |
8 |
сin>>У; |
9 |
if(Х > У) |
10 |
{ |
11 |
cоut<<”МAХ = Х =”; |
12 |
соut<<Х<<”\n”; |
13 |
} |
14 |
else |
15 |
{ |
16 |
cоut<<”MАХ = У =”; |
17 |
соut<<У<<”\n”; |
18 |
} |
19 |
соut<<”Пока, до скорой встречи.”; |
20 |
rеturn (-890); |
21 |
} |
Контрольные вопросы
Содержание отчёта
PAGE
Разработал асс. каф. Компьютерных наук В.Ю.Ващенко