Similar presentations:
тема_2_Ветвления
1. Тема 2 Ветвления
2. Линейный алгоритм
1.2.
3.
4.
Прийти на занятие без опозданий;
Достать ручку;
Достать тетрадь;
Писать лекцию.
Начало
Прийти на
занятие без
опозданий
Достать ручку
Достать
тетрадь
Писать лекцию
Конец
3. Условия
1. Прийти на занятие без опозданий;2. а) Если есть своя ручка, то достать ее;
б) иначе (Если нет ручки), то попросить запасную ручку у соседа;
3. Достать тетрадь;
4. Писать лекцию.
4. Условия
Началода
Достать свою
ручку
Есть своя
ручка?
Прийти на
занятие без
опозданий
нет
да
Есть своя
ручка?
Достать свою
ручку
нет
Попросить
ручку у соседа
Достать
тетрадь
Писать лекцию
Конец
5. Неполный и полный условные операторы
неполныйда
полный
нет
да
нет
5
6. Альтернатива полного условного оператора с двумя неполными условными операторами
даусловие
вып?
нет
действие 1
да
условие
не вып?
нет
действие 2
6
7. Вариант с неполными условными операторами
НачалоПрийти на
занятие без
опозданий
да
Есть своя
ручка?
нет
Достать свою
ручку
да
Нет своей
ручки?
Попросить
ручку у соседа
Достать
тетрадь
Писать лекцию
Конец
нет
8. Синтаксис условного оператора
if (условие)оператор1; //неполный
if (условие)
оператор1;
else
оператор2; //полный
8
9. Пример условного оператора
if (a < b)cout << "a меньше";
//неполный
if (a < b)
cout << "a меньше";
else
//полный
cout << "b меньше или равно";
9
10. Пример условного оператора
if (have_a_pen == true)get_your_pen(); //неполный
if (have_a_pen == true)
get_your_pen();
else
ask_for_a_pen(); //полный
11. Операторы отношения (сравнения)
<<=
>
>=
==
!=
if (a < b) //какой-то оператор
if (a <= b) //какой-то оператор
if (a > b) //какой-то оператор
if (a >= b) //какой-то оператор
if (a == b) //какой-то оператор
if (a != b) //какой-то оператор
11
12. Пример нахождения большего из двух чисел
int main(){float a, b;
cin >> a >> b;
float max;
if(a > b)
max = a;
else
max = b;
cout << "max is: " << max;
}
12
13. Условия без использования операторов отношения
if (x){ // равносильно x != 0/*действие, если х не равно 0*/
}
if (!x){ // равносильно x == 0
/*действие, если х равно 0*/
}
13
14. Пример проверки деления на 0
int main(){float a, b;
cin >> a >> b;
if(b)
cout << a / b;
else
cout << "b не должно быть равно нулю!";
/*то же что
if (!b)
cout << "b не должно быть равно нулю!";
else
cout << a / b;
*/
}
14
15. Операция присваивания в проверяемом условии
float a, b, c, d;cin >> a >> b >> c;
if (d = b * b – 4 * a * c)
cout << "two roots";
else
cout << "one root";
cout << ", D = " << d << endl;
15
16. Вложенные условия. Пример 1
float a, b, c, d;cin >> a >> b >> c;
if (d = b * b – 4 * a * c)
if (d > 0)
cout << "two roots";
else
cout << "complex roots";
else
cout << "one root";
16
17. Алгоритм определения числа корней квадратного уравнения
Begina, b, c
нет
да
d>0
да
"two
roots"
нет
"one root"
"complex
roots"
End
17
programming