Лабораторная работа №3
Тема: Разработка и реализация программ с разветвленной структурой
Получить навыки составления и реализации программ с разветвленной структурой, используя средства языка C/C++;
Задания к лабораторной работе
Задание 2.1 Представить блок-схему программы и вычислить значение переменной X после его выполнения. Обозначение: N — это номер варианта.
№вар | Фрагмент программы | №вар | Фрагмент программы |
1-2 | t=17*n; x=t; if (t30) x=3; else if (t | 3-4 | t=n; x=0; if (t |
5-6 | a=n; b=13; c=12; x=a; if (x | 7-8 | a=n; b=17; c=18; x=a; if (b |
9-10 | x=n; y=0; if (x10) y=x*x-n; if (x | 11-12 | x=n; y=x%4; if(x1 x |
13-14 | x=n; y=x; if(x0 x=10) y=1/(exp(x)-1); | 15-16 | x=-7;t=pow(x,n); if (t0)x=pow(t,1.0/3); else x= t*t*t; |
Задание 2.2 Написать программу, которая выводит на экран значение true, если точка А с координатами х, у принадлежит заштрихованной области, и false в противном случае.
№ вар. | Область | № вар. | Область |
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() |
Теоретические сведения
Вычислительный процесс называется разветвляющимся, если он реализуется по одному из нескольких направлений — ветвей. В программе должны быть учтены все возможные ветви вычислений. Выбор той или иной ветви осуществляется по условию, включенному в состав условного оператора. Для программной реализации условия используетсялогическое выражение. В сложных структурах с большим числом ветвей применяют оператор выбора.
Логические выражения
Логические выражения строятся из операндов, отношений, логических операций и круглых скобок.
Результатом вычисления логического выражения является одно из двух значений: (истина) (не ноль )или (ложь) (ноль).
В качестве операндов используются константы, переменные и функции.
Отношения
Отношение — это простейший вид логического выражения, состоящего из двух выражений арифметического, символьного или строкового типов, соединенных знаком операции отношения.
Операция отношения- это операция сравнения двух операндов:
— меньше
— больше
= — больше либо равно
= = — равно
!= — не равно.
Примеры записи отношений на языке С++
Отношение | Результат |
53 | (не ноль) т.е 1 |
cos(x)1 | (ноль) |
х*х+у*у | (не ноль)для всех точек, лежащих внутри круга с единичным радиусом и центром в начале координат |
a!=’y’ | (не ноль), если значение символьной переменной ане равно символу ’y’ |
Следует помнить, что к операндам вещественного типа не применима операция = = из-за неточного представления чисел в памяти компьютера. Поэтому для вещественных переменных а и b отношение вида а= =b надо заменить отношением fabs(a-b)
Логические операции
Математическая запись | Запись на языке С++ | Название операции |
! | Отрицание | |
^ | Операция «И» конъюнкция (логическое умножение) | |
? | || | Операция «ИЛИ» дизъюнкция (логическое сложение) |
Действия логических операций удобно задать таблицами истинности, в которых приняты следующие обозначения: a, b — логические операнды; 1 — истина, 0 — ложь.
а | b | a || b |
а | b | a b |
а | ! a |
1 0 | 0 1 |
Порядок выполнения операций в логических выражениях
В бесскобочных логических выражениях операции выполняются слева направо в соответствии с их приоритетом:
1. !
Отношения
2. =
3. == !=
4.
5. ||
x0 x
1 3 2
Условные операторы
На языке С++ различают два вида условных операторов: короткий и полный.