- •Введение
- •Объектно-ориентированного программирования
- •1.3. Области видимости переменных и функций в
- •1.4. Основные рекомендации для разработки программ Стиль
- •Интерфейсы
- •Отладка
- •Тестирование
- •Производительность
- •Переносимость
- •2. Лабораторная работа № 1
- •2.1. Разработка алгоритма решения задачи Последовательность разработки алгоритма решения задачи.
- •2.3. Разработка интерфейса пользователя
- •2.4. Выбор визуальных объектов для стартовой формы
- •2.5. Задание свойств объектов
- •Создание меток и текстовых окон
- •2.6. Написание кода программы
- •2.7. Сохранение проекта
- •2.8. Компиляция программы
- •2.9. Отладка и тестирование программы
- •2.10. Задания для лабораторной работы № 1
- •2.11. Контрольные вопросы
- •3. Лабораторная работа № 2
- •3.1. Теоретический материал
- •If (условие) оператор;
- •Оператор разветвления. Форма записи структуры разветвления имеет вид:
- •If (условие) оператор1;
- •Оператор с составным условием. При составлении конструкции оператора условной передачи управления могут использоваться составные условия, в которых условия соединены логическими операциями
- •3.2. Примеры решения задач
- •3.3. Задания для лабораторной работы № 2
- •3.4. Контрольные вопросы
- •4. Лабораторная работа № 3
- •4.1. Теоретические сведения
- •4.2. Задания для лабораторной работы № 3
- •4.3. Контрольные вопросы
- •5. Лабораторная работа № 4
- •5.1. Теоретические сведения.
- •5.2. Задания для самостоятельного выполнения
- •5.3. Контрольные вопросы
- •6. Лабораторная работа № 5
- •6.1. Теоретический материал
- •Strcpy (Sp, “дополнительный текст”);
- •Библиотечные функции работы со строками типа char
- •Основные функции работы со строками типа AnsiString
- •6.3. Задания для самостоятельной работы
- •6.4. Контрольные вопросы
- •7. Лабораторная работа № 6
- •7.1. Рисование по пикселям
- •7.2. Рисование с помощью пера
- •Методы вычерчивания графических примитивов с помощью пера
- •Выбор метода решения задачи
- •Алгоритм решения задачи
- •Разработка интерфейса пользователя
- •Разработка кода программы
- •7.3. Рисование геометрических фигур
- •7.4. Задания для самостоятельного выполнения
- •7.5. Контрольные вопросы
- •Заключение
- •Библиографический список
- •Математические функции
- •Константы, используемые в математических выражениях
- •Тригонометрические функции
- •Арифметические и алгебраические функции
- •Функции перерасчета градусы-радианы
- •Компьютерные технологии
- •3 94006 Воронеж, ул. 20-летия Октября,84
If (условие) оператор;
Скобки, обрамляющие условие, обязательны.
Например, в результате выполнения операторов
a = 10;
b =20;
if (b > a) c = b;
переменная с станет равной максимальному из чисел a и b, поскольку оператор c = b будет выполнен только при b > a.
Условием может быть арифметическое выражение, которое может быть преобразовано в булев тип. Поскольку в С++ арифметическое (целое и действительное) значение может преобразовываться к булеву типу (любое ненулевое значение воспринимается как true, а нулевое – как false, то условие может иметь целый тип. Например:
int a, b, c, d;
…………
if ( a – b/c) d = c;
………….
В результате выполнения указанных операторов, если выражение (a – b/c) будет иметь ненулевое значение (положительное или отрицательное), то переменой d будет присвоено значение c, если выражение будет иметь нулевое значение, будет выполняться оператор, следующий за условным оператором.
Внимание. Не рекомендуется в условии использовать арифметическое выражение с действительными числами, так как в результате ошибок округления результат вычисления может не быть равен нулю, даже когда чисто теоретически результат дает нуль.
Оператор разветвления. Форма записи структуры разветвления имеет вид:
If (условие) оператор1;
else оператор2;
Если условие возвращает true, то выполняется первый из указанных операторов, а в противном случае выполняется второй оператор. Обратите внимание, что в конце первого оператора перед ключевым словом else ставится точка с запятой.
Например:
if (j == 0)
ShowMessage (“Деление на нуль”);
else
Result = i/j;
Смысловое содержание приведенных операторов состоит в следующем: если значение переменной j = 0, то выводится предупреждение, что в следующем операторе будет выполняться деление на нуль и выполнение этого оператора пропускается, в противном случае выполняется оператор Result = i/j.
В качестве первого и второго оператора могут использоваться составные операторы:
if (j == 0)
{
ShowMessage (“Деление на нуль”);
Result = 0;
}
else
{
Result = i/j;
B = Result*d;
}
Вложенные конструкции операторов. При написании программы могут использоваться условные операторы, имеющие вложенные конструкции, когда внутри одного условия проверяются другие условия. Схемы вложенных конструкций оператора условной передачи управления представлены на рис 3.3.
Рис. 3.3. Схемы вложенных условных операторов:
Запись оператора условной передачи управления с вложенными конструкциями имеет вид:
If ( условие1)
If ( условие2)
Оператор1;
Else оператор2;
Else оператор 3;
При написании операторов условной передачи управления с вложенными конструкциями необходимо проверять соответствие if и else. Компилятор всегда считает, что else относится к последней из конструкций if, в которой не было раздела else.
Например в конструкции:
if ( условие1)
if ( условие2)
Оператор1;
else оператор2;
else будет отнесено компилятором ко второй конструкции if , т. е. оператор2 будет выполняться, если первое условие истинно, а второе – ложно. Данная запись оператора тождественна следующей записи:
if ( условие1)
{
if ( условие2)
оператор1;
else оператор2;
}
Если необходимо отнести к первому, то выражение надо записать в явном виде с помощью фигурных скобок:
if ( условие1)
{
if ( условие2) оператор1;
}
else оператор2;