- •Программирование
- •2. Начало работы в среде
- •2.1. Вызов Borland c
- •2.2. Использование меню
- •2.3. Работа с окнами. Использование мыши
- •2.4. Первая программа
- •2.5. Работа с файлами
- •2.6. Основные приемы работы с текстовым редактором
- •2.7. Меню Edit
- •3. В конце работы Вы должны уметь
- •1.2. Структура программы на языке Borland c
- •1.3.1. Константы и переменные
- •1.3.2. Типы данных в с
- •II. Экспериментальный раздел работы
- •III. Дополнительный материал
- •IV. Раздел заданий для самостоятельной работы
- •Работа 3 Операции языка Си, оператор присваивания
- •I.Теоретический раздел работы
- •1.1. Знаки операций в Си
- •1.2.Выражения
- •2. Оператор присваивания
- •3. Алгебраические выражения
- •4. Описание пользовательских подпрограмм-функций
- •II. Экспериментальный раздел работы
- •III. Раздел заданий для самостоятельной работы
- •Работа 4 Числовые типы данных
- •I.Теоретический раздел работы
- •1.1. Целые типы данных
- •1.1.1. Операции над целыми типами данных
- •1.1.2. Представление целых чисел в компьютере
- •1.1.3. Некоторые стандартные подпрограммы для работы с целыми числами
- •1.2. Представление вещественных чисел в эвм
- •II.Экспериментальный раздел работы
- •III. Раздел заданий для самостоятельной работы.
- •Работа 5 Операторы отношений и логические операторы
- •I.Теоретический раздел работы
- •1.1. Некоторые сведения о логическом типе данных
- •1.2. Оператор условного перехода if...Else
- •1.3. Условный оператор switch
- •II. Экспериментальный раздел работы
- •Работа 6 Инструкции управления. Операторы Си, реализующие повторения
- •I. Теоретический раздел работы
- •1.1. Оператор цикла с предусловием
- •1.2. Оператор цикла с постусловием
- •1.3. Оператор цикла со счётчиком
- •1.4. Операторы завершения цикла
- •II.Экспериментальный раздел работы
- •Список литературы
Работа 5 Операторы отношений и логические операторы
Цель работы:
изучить логические данные, правила составления логических выражений в языке Cи;
изучить правила работы с логическими операторами;
закрепить навыки работы в среде C++.
I.Теоретический раздел работы
1.1. Некоторые сведения о логическом типе данных
Логические (булевы) константы, переменные и выражения могут принимать только два значения: true (истина) и false (ложь).
Логические переменные объявляются, как bool, например:
bool p,q;
Под них выделяется 1 байт памяти.
Логический тип является перечисляемым, причем
true>false;
false=0;true=1;
В языке Cи введены три логические операции:
! - НЕТ (отрицание; математическое обозначение: ) ;
&& - И (логическое умножение, конъюнкция; математическое обозначение: ^, &);
|| - ИЛИ ( логическое сложение, дизъюнкция; );
Однако в Си существуют и побитовые операции, которые в некоторых случаях эквивалентны логическим.
~ - НЕТ (отрицание) ;
& - И (логическое умножение, конъюнкция);
| - ИЛИ ( логическое сложение, дизъюнкция).
Подробно операции рассмотрены во второй работе.
1.2. Оператор условного перехода if...Else
Разветвляющийся вычислительный процесс может быть осуществлен с помощью структуры выбора, содержащей логическое условие и ветви true и false. Если условие выполняется, то осуществляется переход к верви true, в противном случае – к ветви false. В языке C++ структура выбора реализуется с помощью оператора условного перехода.
Его синтаксис:
if (B) S1;
else S2;
где B - логическое выражение;
S1, S2 – любые операторы языка;
if ( если), else (иначе) – служебные слова.
Если значение B – true, то выполняется оператор S1, если – false, то выполняется оператор S2. Затем в обоих случаях управление передается следующему оператору программы. Допускается и краткая форма условного оператора:
if (B) S1;
В этом случае, если значение B – false, управление сразу передается оператору, следующему за оператором if.
Условные операторы могут иметь вложенную конструкцию, когда после слова else используется также условный оператор. Если в какую- либо ветвь разветвления требуется вставить несколько операторов S1,S2,...Sn, то они объединяются в один составной оператор:
{ S1;S2; ... Sn;}
Для этого они заключаются в фигурные скобки. Элементами составного оператора могут быть любые операторы языка, в том числе условные и другие составные операторы. Заметим, что и сама программа строится на основе понятия составного оператора.
1.3. Условный оператор switch
Обычно при написании программы не рекомендуется использовать многократно вложенные друг в друга условные операторы, так как программа при этом становится громоздкой и трудно понимаемой. Для этих целей в языке C++ существует специальный оператор выбора. Его синтаксис:
switch (N)
{
case M1: S1;
break;
case M2: S2;
break;
……………………………..
default: S;
}
где N - переменная, называемая селектором или переключателем;
S1,...Si,S – операторы;
M1, M2,... - метки, которые отличаются по смыслу от меток,
описываемых в разделе label;
switch(переключатель),case(выбор), default (умолчание), end – служебные слова.
Отметим, что переключатель и метки должны быть одного и того же скалярного типа, за исключением вещественного.
Оператор switch передает управление тому оператору case, с одной из меток которого совпало значение селектора N и будут выполняться все строки программыпосле выбранного case до тех пор, пока не закончится тело блока оператора switch или не повстречается оператор break, а затем управление передается на оператор, следующий за скобкой «}». Если значение селектора N не совпало ни с одной из меток, то исполняется строки стоящие после оператора default - оператор S.
Ветвь оператора default является необязательной. Тогда при отсутствии в списке выбора нужной константы оператор switch завершит свою работу.