Лабораторная работа № 2
Программирование ветвящихся алгоритмов
Цель работы: 1) изучить различные способы программирования ветвящихся алгоритмов; 2) получить практические навыки программирования задач с разветвленной структурой.
Теоретические сведения
1.Иногда необходимо, чтобы программа могла выбирать между двумя альтернативами в зависимости от входного значения. Оператор, который позволяет осуществить такой выбор, называется условным оператором.
Условный оператор if
Синтаксис полной формы условного оператора:
if ( логическое выражение ) оператор1;
else оператор2;
Если логическое выражение истинно, т.е. больше нуля, то выполняется оператор1, иначе выполняется оператор2.
Синтаксис сокращенной формы условного оператора:
if ( логическое выражение ) оператор;
Оператор выполняется только в том случае, если логическое выражение больше нуля, т.е. истинно.
2.Под логическим выражением понимается совокупность операций отношений и логических операций. Основные логические операции приведены в табл.1.
Таблица 1
Основные логические операции
Операция |
Значение |
Пример |
! |
Логическое НЕ |
!EOF |
|| |
Логическое ИЛИ |
!a || b |
&& |
Логическое И |
a>8 && c<5 |
3. логическое И отличается от логического ИЛИ разным результатом операций.
4. Основные операции отношений
= = |
Равно |
value==0 |
!= |
Не равно |
value!=0 |
< |
Меньше |
i<count |
> |
Больше |
i>count |
> = |
Больше или равно |
i>=count |
< = |
Меньше или равно |
i<=count |
5. switch – оператор множественного выбора, а if только из 2 альтернатив.
6. Управление экраном
Язык С++ содержит стандартные константы и функции управления экраном. Прототипы функций управления экраном находятся в файле conio.h. При использовании этих функций необходимо подключить данный файл с помощью директивы компилятору:
#include <conio.h>
Установка окна
Функция
void window (int left, int top, int right, int bottom );
устанавливает текущее текстовое окно на экране (рис.4). Значения координат диагонали left, right, top, bottom всегда отсчитываются от левого верхнего угла экрана в абсолютных координатах и должны удовлетворять следующим условиям:
1<= left < right <=25
1<= top < bottom<=80
Рис.4. Координаты окна и экрана
При нарушении этих условий окно не создается. После установки окна все операции, связанные с выводом информации, выполняются внутри текущего окна. Отсчет строк и столбцов для позиционирования курсора осуществляется в координатах текущего окна. Теперь left=1 и top=1 - это координаты верхнего левого угла окна.
Следует помнить, что при установке окна экран не очищается, а координаты очередного создаваемого окна всегда задаются в абсолютных экранных координатах, а не в относительных координатах последнего текстового окна.
Функция void clrscr ( void ); очищает текущее текстовое окно или весь экран.
Задать цвет фона окна позволяет функция
void textbackground(int newcolor);
В переменной newcolor задается одна из шестнадцати целочисленных констант, каждая из которых имеет символьное имя (табл.2).
Задание цвета символов
Для задания цвета символов используется функция
void textcolor( int newcolor);
В переменной newcolor задается цвет выводимых на экран символов (см. табл.8).
Таблица 8
Константы цвета
Константа цвета |
Символьное имя |
Цвет |
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
BLACK BLUE GREEN CYAN RED MAGENTA BROWN LITHGRAY DARKGRAY LIGHTBLUE LIGHTGREEN LIGHTCYAN LITGHTRED LIGTHMAGENTA YELLOW WHITE |
Черный Синий Зеленый Бирюзовый Красный Малиновый Коричневый Светло-серый Темно-серый Светло-голубой Светло-зеленый Светло-бирюзовый Светло-красный Светло-малиновый Желтый Белый |
Для помещения курсора в точку (x,y) внутри текущего окна используется функция
void gotoxy(int x,int y);