- •Лекция 1 Создание консольного приложения
- •2. Консоль. Построение консольного проекта
- •3. Запуск приложения
- •4. Сохранение и редактирование проекта
- •Лекция 2
- •4. Функции форматированного ввода и вывода
- •4.1. Функция форматированного ввода с клавиатуры
- •4.2. Функция форматированного вывода на экран
- •5. Математические функции
- •Лекция 3 Линейные вычислительные процессы
- •1. Алгоритм. Управляющие структуры
- •2. Линейные вычислительные алгоритмы
- •2.1. Условный оператор if()
- •2.2. Условное выражение
- •2.3. Оператор выбора switch()
- •Лекция 5 Программирование разветвляющихся вычислительных процессов
- •Лекция 6 Циклические вычислительные процессы.
- •1. Типы циклов
- •3. Операторы безусловного перехода
- •Лекция 7 Вычисление последовательностей
- •4. Примеры вычисления последовательностей
- •5. Структура алгоритмов вычисления рекуррентных последовательностей
- •Лекция 8 Одномерные массивы
- •1. Массивы
- •1.1. Примеры программ обработки одномерных массивов
- •1.2. Сортировка выбором
- •1.3. Сортировка простыми вставками
- •Лекция 10 Двухмерные массивы
- •1. Двухмерные массивы
- •Лекция 11 Алгоритмы матричной алгебры
- •1. Алгоритмы матричной алгебры
- •Лекция 12 Динамические массивы
- •1. Память компьютера. Адресное пространство
- •2. Динамическая память
- •3. Адреса и указатели
- •4. Указатели и массивы. Динамические массивы
- •5. Проблемы, связанные с указателями
- •6. Поразрядные операции
- •1.2. Способы объявления и обращения к элементам двухмерных массивов
- •Лекция 14 Символы и строки
- •1. Символьный тип данных
- •2. Строки
- •Лекция 15 Структуры
- •1. Понятие структуры
- •2. Определение нового имени типа
- •3. Массивы структур. Указатели на структуры
- •3.1. Определение статического массива структур
- •3.1. Определение динамического массива из n структур
- •Лекция 16 Файлы
- •1. Потоковый ввод-вывод данных
- •3. Понятие файла. Функции работы с файлами
- •Лекция 17 Файлы
- •Лекция 18 Функции пользователя
- •I. Приёмы построения алгоритмов
- •2. Понятие функции
- •2.1. Определение функции
- •2.2. Область видимости переменных
- •2.3. Параметры функции
- •2.4. Описание функции
- •2.5. Организация вызова функции
- •2.5. Передача параметров в функцию
- •3. Рекурсия
- •Лекция 20 Нахождение приближенного значения корня нелинейного уравнения
- •На отрезке [a;b] с заданной точностью eps
- •1.1. Метод дихотомии (половинного деления)
- •1.2. Метод хорд
- •1.3. Метод касательных (Ньютона)
- •Лекция 22 Объектно-ориентированное программирование
- •Полиморфизм – это свойство класса, позволяющее определить одно и то же по имени, но разное по смыслу действие. Основные этапы ооп:
- •Уточнённое имя принадлежит классу (т.Е. Компонентной) функции
- •Лекция 23 Объектно-ориентированное программирование
- •1. Конструкторы и деструкторы
- •1.2. Определение компонентных функций
- •Лекция 25 Объектно-ориентированное программирование
- •1. Свойства классов
- •1.1. Наследование классов
- •1.2. Полиморфизм
- •Библиографический список
2.2. Условное выражение
Условные выражения предназначены для выбора одного из двух арифметических выражений при вычислении левой части оператора присваивания:
a=(<условие>) ? <выражение1> : <выражение2>;
Правило работы условного выражения: если условие истинно, то переменной a присваивается значение <выражение1>; если условие ложно, то переменной a присваивается значение <выражение2>. Например,
x=(w>5) ? I*U : I/U;
Здесь, переменной x будет присвоено значение выражения I*U, если условие w>5 истинно, и значение выражения I/U, если условие w>5 ложно.
2.3. Оператор выбора switch()
Оператор выбора (переключатель, оператор принятия решения) switch() является наиболее удобным средством для организации мультиветвления. Оператор switch() выполняет действие, основываясь на сравнении значения ключа со значениями констант-символов или констант-целых чисел (константных выражений). Синтаксис оператора выбора switch():
switch(<выражение–ключ>)
{
case <константное_выражение1>:
операторы1;
break;
case <константное_выражение2>:
операторы2;
break;
…
default:
операторыV;
}
<выражение–ключ> – выражение любого типа; результатом вычисления этого выражения может быть значение целого или символьного типа.
Правила работы оператора switch():
-
Вычисляется значение <выражение–ключ>.
-
Это значение последовательно сравнивается со значением каждого из <константного_выражения>, следующих после каждого case.
-
Если значения ключа и какого-либо <константного_выражения> совпали, то выполняются все операторы, следующие за этим case.
-
Если в этом case встретился оператор break, то оператор switch() прекращает работу. Если в этом case нет оператора break, то будут выполняться все операторы, следующие либо после этого case, либо до ближайшего оператора break, либо до конца оператора switch() при отсутствии операторов break.
-
Если не найдено ни одного совпадения ключа и одного из <константного_выражения>, то будут выполняться все операторы, следующие за оператором default.
Значения константных выражений, помещаемых за служебными словами case, приводятся к типу ключа. В одном переключателе все константы должны иметь различные значения, но быть одного типа. Любой из операторов, помещённых в фигурных скобках после конструкции switch(), может быть помечен одной или несколькими метками вида
case <константное_выражение>:
В каждом переключателе должно быть не больше одной метки default, однако эта метка может и отсутствовать. В случае её отсутствия при несовпадении переключающего выражения ни с одним из константных выражений, помещаемых вслед за case, в переключателе не выполняется ни один из операторов. Сами по себе метки case <константное_выражение>: и default не изменяют последовательности выполнения операторов. Если не предусмотрены переходы или выходы из переключателя, то в нём последовательно выполняются все операторы, начиная с той метки, на которую передано управление. С помощью оператора break выполняется выход из переключателя. Операторы break являются не обязательными в операторе switch(). Они используются для окончания работы последовательности операторов, предшествующих этому break. Если break отсутствует, продолжаются выполняться операторы следующего раздела, пока не будет достигнут оператор break или конец оператора switch().
Оператор switch() отличается от условного оператора if() тем, что он может выполнять только операции проверки строгого равенства, в то время как if() может проверять логические выражения.