
C++ if switch
Presentation
•
Computers
•
University
•
Practice Problem
•
Hard
Romenion Kz
FREE Resource
21 Slides • 0 Questions
1
Шартты өту операторлары көмегімен тармақталу құрылымын программалау.
Лекция 5
1
2
Сабақтың мақсаты:
алгоритм түрлерімен таныстыру, тармақталған алгоритм құруды үйрету
Лекция 5
1
3
4
Выбор наибольшего из двух чисел
2
начало
M = a
ввод a,b
a > b?
M = b
конец
да
нет
вывод M
полная
форма
ветвления
Если a = b?
?
if( a > b )
M = a;
else
M = b;
5
Вариант 1. Программа
3
int main()
{
int a, b, M;
cout << "Введите два целых числа:";
cin >> a >> b;
if( a > b )
else
cout << "Наибольшее число " << M;
}
M = a;
M = b;
полная форма
условного
оператора
6
Выбор наибольшего из двух чисел-2
4
неполная
форма
ветвления
начало
M = a
ввод a,b
M = b
конец
да
нет
b > a?
вывод M
7
Вариант 2. Программа
5
int main()
{
int a, b, M;
cout << "Введите два целых числа: ";
cin >> a << b;
M = a;
if( b > a )
M = b;
cout << "Наибольшее число " << M;
}
неполная
форма
условного
оператора
8
Примеры
6
if( a < b )
M = a;
if( b < a )
M = b;
Что плохо?
?
Когда работает неверно?
?
if( a < b )
{
c = a;
a = b;
b = c;
}
Что делает эта программа?
?
Поиск минимального:
{
c = a;
a = b;
b = c;
}
составной
оператор
Составной оператор (блок) в
фигурных скобках!
!
9
Вложенные условные операторы
7
Задача. В переменной a записан возраст Антона, а в
переменной b – возраст Бориса. Определить, кто из
них старше.
Сколько вариантов ответа?
if( a == b )
cout << "Одного возраста";
else
if( a == b )
cout << "Одного возраста";
else
cout << "Борис старше";
вложенный
условный
оператор
else относится к
ближайшему if(
10
Сложные условия
8
Задача. Фирма набирает сотрудников от 25 до 40 лет
включительно. Ввести возраст человека и определить,
подходит ли он фирме (вывести ответ "подходит" или
"не подходит").
Особенность: надо проверить, выполняются ли два
условия одновременно:
возраст >=25 возраст <=40
Можно ли решить известными методами?
11
Плохое решение
9
int main()
{
int v;
cout << "Введите ваш возраст";
cin >> v;
if( v >= 25 )
if( v <= 40 )
cout << "Подходит!";
else
cout <<"Не подходит.";
else
cout <<"Не подходит.";
}
вложенный
условный
оператор
12
Хорошее решение (операция «И»)
10
int main()
{
int v;
cout << "Введите ваш возраст";
cin >> v;
if( v >= 25 and v <= 40 )
cout << "Подходит!";
else
cout << "Не подходит.";
}
сложное
условие
13
Примеры
11
Задача. Вывести "Да", если число в переменной a –
двузначное.
if( 10 <= a and a <= 99 )
cout << "Да";
Задача. Вывести "Да", если число в переменной a –
двузначное и делится на 7.
if( 10 <= a and a <= 99
and a % 7 == 0 )
cout << "Да";
14
Сложные условия
12
Задача. Самолёт летает по понедельникам и четвергам.
Ввести номер дня недели и определить, летает ли в
этот день самолёт.
Особенность: надо проверить, выполняется ли одно из
двух условий:
день = 1
день = 4
if( d == 1 or d == 4 )
cout << "Летает";
else
cout << "Не летает";
сложное
условие
15
Ещё пример
13
Задача. Фирма набирает сотрудников от 25 до 40 лет
включительно. Ввести возраст человека и определить,
подходит ли он фирме (вывести ответ "подходит" или
"не подходит"). Использовать «ИЛИ».
if(
cout << "Не подходит!";
else
cout << "Подходит.";
v < 25 or v > 40)
16
Простые и сложные условия
14
Простые условия (отношения)
< <= > >= == !=
Сложное условие – это условие, состоящее из
нескольких простых условий (отношений),
связанных с помощью логических операций:
• И – одновременное выполнение условий
v >= 25 and v <= 40
• ИЛИ – выполнение хотя бы одного из условий
v < 25 or v > 40
• НЕ – отрицание, обратное условие
not (v > 25)
равно
не равно
v <=25
17
Порядок выполнения операций
15
• выражения в скобках
• НЕ (not)
• И (and)
• ИЛИ (or)
1
if( not(a > 2) or c != 5 and b < a )
{
...
}
4
2
3
5
6
18
Сложные условия
16
Истинно или ложно
not (a > b)
(a < b) and (b < c)
(a > c) or (b > c)
(a < b) and (b > c)
(a > c) and (b > d)
not(a >= b) or (c == d)
(a >= b) or not (c < b)
(a > c) or (b > c) or (b > a)
Да
Да
Нет
Да
Да
Нет
Нет
Да
2
a
3
b
4
c
19
Логические переменные
17
bool b;
b = true; // 1
b = false; // 0
только два
возможных
значения
Пример:
bool vyh;
...
vyh = (d == 6) or (d == 7);
...
if( not vyh )
cout << "Рабочий день.";
else
cout << "Выходной!";
20
switch(выражение)
{
case значение_1: инструкции_1;
case значение_2: инструкции_2;
...................
case значение_N: инструкции_N;
default: инструкции;
}
21
switch(c);
case 1: printf(“\n Дүйсенбі!”); break;
case 2: printf(“\n Сейсенбі!”); break;
case 3: printf(“\n Сәрсенбі!”); break;
case 4: printf(“\n Бейсенбі!”); break;
case 5: printf(“\n Жұма!”); break;
case 6: printf(“\n Сенбі!”); break; default:printf(“\n Жексенбі”); }
Пернетақтадан енгізілген апта күндерінің рет саны бойынша олардың аттарын экранға шығар
Шартты өту операторлары көмегімен тармақталу құрылымын программалау.
Лекция 5
1
Show answer
Auto Play
Slide 1 / 21
SLIDE
Similar Resources on Wayground
16 questions
La Familia en la Nueva Escuela Mexicana
Presentation
•
Professional Development
17 questions
Buenas practicas de Elaboración BPE
Presentation
•
Professional Development
20 questions
CN 5
Presentation
•
University
16 questions
Zephyrus G14 Alan Walker
Presentation
•
University
16 questions
39 JavaScript Zmienne
Presentation
•
KG
18 questions
Bài học Giới thiệu gôn ngữ lập trình
Presentation
•
University
15 questions
Subject - Verb Agreement
Presentation
•
University
17 questions
Identify and shop for clothes
Presentation
•
University
Popular Resources on Wayground
12 questions
5th Grade Map and Informational Processing Skills
Quiz
•
5th Grade
10 questions
Understanding Albinism
Quiz
•
9th Grade
11 questions
HSMS - Standard Response Protocol
Quiz
•
6th - 8th Grade
11 questions
Hallway & Bathroom Expectations
Quiz
•
6th - 8th Grade
33 questions
Purvis High School Staff Handbook Quiz
Quiz
•
Professional Development
29 questions
Laboratory Safety Rules
Quiz
•
6th Grade
17 questions
Expectations & Procedures Review
Quiz
•
6th Grade
10 questions
Common Denominators
Quiz
•
5th Grade