- •Міністерство освіти і науки україни
- •Для студентів напряму підготовки 0804 "Комп’ютерні науки" усіх форм навчання
- •Харків, хнеу, 2008
- •Содержание
- •Общие положения
- •Требования к оформлению отчета
- •Часть 1(4 часа): Среда визуальной разработки программ Microsoft Visual Studio .Net
- •Разработка простейшего консольного приложения.
- •Часть 2(2 часа): Подготовка и решение на пэвм задач линейного характера
- •Краткие теоретические сведения
- •1.2. Стандартные типы данных, модификаторы,
- •1.3. Спецификаторы класса памяти
- •1.4. Операции
- •Лабораторная работа №2 Подготовка и решение на пк задач с разветвлением
- •Краткие теоретические сведения
- •2.1. Оператор if
- •If (условие) выражение;
- •If (условие) выражение1; else выражение2;
- •2.2. Оператор switch/case
- •2.3. Операторы break, continue и goto
- •Задания к лабораторной работе №2
- •Лабораторная работа №3 Подготовка и решение на пк задач с использованием циклов
- •Лабораторная работа №4 Применение функций для решения типовых экономических задач
- •Использование параметров функции для обмена информацией между функциями.
- •Создание собственных заголовочных файлов
- •Лабораторная работа №5 Обработка на пк одномерных массивов.
- •5.1. Краткие теоретические сведения
- •Лабораторная работа №6 Обработка на пк двумерных массивов.
- •Двумерные массивы
- •Приложение а. Среда визуальной разработки программ Microsoft Visual Studio .Net
- •1.1. Среда mde
- •1.2. Команды главного меню
- •1.3. Создание проекта
- •1.4. Ввод и редактирование исходного текста программы
- •1.5. Создание исполняемого файла
- •1.6. Запуск и отладка программы
- •Приложение №в
- •Спецификация программных требований
- •Целое число, выводится на экран. Пользовательский интерфейс
- •План тестирования
- •Текст программы
- •Результат работы программы
- •Краткие выводы по работе
Лабораторная работа №2 Подготовка и решение на пк задач с разветвлением
Цель лабораторной работы – приобретение практических навыков по подготовке, отладке и выполнению разветвляющихся программ.
Перед выполненим лабораторной работы студент должен знать:
- методику разработки программы с общей линейной частью и несколькими ветвями;
- алгоритмы выполнения и синтаксис опраторов if, if/else, switch/case и условной операции ?:.
После выполнения лабораторной работы студент должен уметь разрабатывать и отлаживать программы с разветвлениями.
Краткие теоретические сведения
Во многих случаях дальнейшее выполнение программы от некоторой точки должно идти по разным путям в зависимости от определенных условий. Например, при щелчке мышью по одной кнопке программа должна приступить к выполнению ветви 1, а при щелчке по другой кнопке - к выполнению ветви 2. Такие условные переходы совсем не обязательно связаны с командами пользователя; программа может сама выбрать дальнейший путь, например по результатам некоторой математической операции: при нулевом результате выполнить один фрагмент, при отрицательном - другой, при положительном - третий. В C++ существует три базовых опратора выбора: if, if/else, switch/case и условной операции ?:.
2.1. Оператор if
Оператор if предназначена для выполнения команды или блока команд в зависимости от того, истинно заданное условие или нет. Формат оператора if:
If (условие) выражение;
Если в результате проверки условия возвращается значение true, выполняется выражение, после чего управление передается следующей строке программы. Если же результатом проверки условия является значение false, выражение пропускается.
Оператор if/else позволяет выборочно выполнять одно из двух действий в зависимости от условия. Формат данной инструкции имеет вид:
If (условие) выражение1; else выражение2;
Если в результате проверки условия возвращается значение true, выполняется выражение1, в противном случае — выражение2.
Если операторная часть ветви If или else содержит не одно выражение, а несколько, необходимо заключить их в фигурные скобки. После закрывающей фигурной скобки точка с запятой не ставится.
Оператор if первой и второй формы реализуют алгоритмы представленные на рис. 1.
Рис.1. Алгоритмы работы операторов if
В качестве анализируемого выражения в операторе if чаще всего используется одина из операций отношения.
Наряду с операциями отношения в инструкции if широко используются логические операции. Объединяя их с операциями отношения, можно создавать комбинированные конструкции проверки данных.
2.2. Оператор switch/case
Оператор switch/case позволяет в зависимости от значения некоторого выражения выбрать один из многих вариантов продолжения программы. Оператор имеет следующий формат:
switch(выражение) {
case значение1: оператор1;break;
case значение2: оператор2;break;
...
case значениеN: операторN;break;
default: операторN+1;
}
Оператор switch/case реализует алгоритм представленный на рис. 2.
Рис.2. Алгоритмы работы оператора switch/case
Оператор switch/case может быть использован в варианте без опрератораN+1.
В качестве выражения при операторе switch обычно используется переменная типа int или char, хотя можно использовать и более сложные выражения, в которые входят, например, арифметические или логические операции над несколькими переменными и константами.
В качестве значений при операторе case обычно используются просто константы (в числовой форме или в символьной, если они были заранее определены с помощью оператора препроцессора #define), однако могут использоваться и выражения над константами.
Выполнение оператора switch начинается с вычисления выражения в скобках, которое должно давать целочисленный результат. Этот результат последовательно сравнивается с значениями при операторах case, и, если будет обнаружено равенство результатов, то выполняется оператор соответствующего case. Если совпадения результатов не обнаружено, выполняется оператор при операторе default , если оператор default отсутствует, то начинают выполняться операторы, следующие за всей конструкцией switch/case.