
- •Лекция 1. Основы языков программирования.
- •Лекция 2. Способы записи алгоритмов.
- •Лекция 3. Знакомство с языком Паскаль.
- •Лекция 4. Структура программы на языке Паскаль.
- •Лекция 5. Стандартные типы данных.
- •5.1 Целые типы
- •5.2 Вещественные типы
- •5.3 Символьный тип.
- •5.4 Ограничительные типы.
- •5.5 Перечислимые типы.
- •Л.6. Операторы языка Паскаль Ввод исходных данных.
- •Расчет.
- •Стандартные функции Турбо Паскаля
- •Стандартные процедуры
- •Константы
- •Вывод результатов
- •Лекция 7. Операторы условий if, case
- •7.1 Оператор безусловного перехода
- •7.2 Условный оператор
- •7.3 Оператор варианта
- •Лекция 8. Операторы цикла for, while, repeat
- •8.1 Оператор цикла с предусловием.
- •8.2 Оператор цикла с постусловием.
- •8.3 Оператор цикла с параметром.
- •Лекция 9. Одномерные и двумерные массивы.
- •Работа с массивами
- •Инициализация элементов массива
- •Лекция 10. Процедуры и функции в Паскаль.
- •Лекция 11. Параметры в процедурах.
- •11.1 Механизм параметров.
- •11.2. Параметры - значения.
- •11.3. Параметры - переменные.
- •11.4. Безтиповые параметры.
- •Лекция 12. Типы данных, определяемые пользователем. Записи.
- •Лекция 13. Работа с файлами. Обработка ошибок в Паскаль.
- •13.1 Файловые типы
- •13.2 Операции ввода-вывода Write, Read
- •13.3. Перемещение по файлу.
- •13.4 Обработка ошибок ввода - вывода
- •13.5 Текстовые файлы
- •13.6 Файлы без типа.
- •Лекция 14. Модули и внешние файлы в Паскаль.
- •15.1. Компиляция и использование модулей
- •15.2. Компиляция и поиск модулей.
- •15.3. Стандартные модули
- •Лекция 15. Динамические структуры данных.
- •15.1 Ссылочные типы и указатели.
- •15.2 Статические переменные.
- •15.3. Создание и удаление динамических переменных.
- •15.4. Установка размеров динамической памяти.
- •Лекция.16. Графические возможности языка Паскаль.
- •Лекция17. Практическое применение языка Паскаль в решении технологических и экологических задач
7.3 Оператор варианта
Является обобщением условного оператора для случая произвольного числа альтернатив.
Рисунок 7.4 – Оператор выбора
Рисунок 7.5 – Альтернатива
Рисунок 7.6 – Ветвь else
Синтаксис языка предполагает один оператор для каждой альтернативы, при необходимости задания нескольких операторов следует сгруппировать их в составной оператор. Ветвь else допускает последовательность операторов, разделенных символом ';'.
Рассмотрим пример использования оператора выбора. Пусть необходимо преобразовать целое число в зависимости от остатка деления на 17:
если N mod 17 = 0, то N:=0;
если N mod 17 = 1 или 6, то N:=-N;
если N mod 17 = от 2 до 4 или 7, то N:=2*N;
если N mod 17 = 5, то N:=3*N;
во всех прочих случаях N:=5*N;
Решение этой задачи будет выглядеть следующим образом:
…
Case N mod 17 of
0 : N:=0;
1,6 : N:=-N;
2..4,7 : N:=2*N;
: N:=3*N;
else N:=5*N;
end;
…
Лекция 8. Операторы цикла for, while, repeat
8.1 Оператор цикла с предусловием.
Рисунок 8.1 – Оператор цикла с предусловием
Оператор задает повторное выполнение оператора, содержащегося в нем. Перед каждым выполнением внутреннего оператора производится проверка значения булевского выражения, которое служит критерием выполнения. True: выполнение очередной итерации и False: выполнение оператора цикла заканчивается.
while x<=N do begin Fact:=Fact+x; X:=x+1; End;
8.2 Оператор цикла с постусловием.
Отличается от предыдущего оператора тем, что условие проверяется после выполнения очередной итерации (гарантируется хотя бы одно выполнение цикла), а, во-вторых, тем, что критерием прекращения цикла является равенство выражения константе True; при false цикл повторяется.
Рисунок 8.2 – Цикл с постусловием
То есть синтаксис while - цикла допускает в теле цикла только один оператор, в то время как repeat-цикл может содержать последовательность операторов.
Repeat K:=i mod j; i:= j; j:=k; until j=0;
8.3 Оператор цикла с параметром.
Используется когда число повторений может быть определено перед его началом. Циклы с параметром позволяют автоматически изменять значение некоторой переменной и использовать это значение в последовательных итерациях. Оператор цикла определяет:
диапазон изменения значений управляющей переменной и число повторений оператора, содержащегося в теле цикла;
направление изменения значения переменной;
действия, выполняемые на каждой итерации.
Рисунок
8.3 – Цикл С Параметром
Рисунок 8.4 - Диапазон
Например: For i:=1 to 10 do M[i]:=i*2;
Диапазон значений управляющей переменной может задаваться выражениями, которые вычисляются один раз перед выполнением цикла:
For j:=x+2 downto x-2 do
Begin
M[j*2-1]:=A+B;
Writeln(A, B, M[j*2-1]);
End;
На использование управляющей переменной налагаются следующие ограничения. В качестве управляющей переменной должна использоваться простая переменная, описанная в текущем блоке. Она должна иметь дискретный тип. Начальные и конечные значения диапазона должны иметь тип, совместимый с типом управляющей переменной. В теле цикла запрещается явное изменение управляющей переменной (например, оператором присваивания). Служебное слово to увеличивает счетчик на единицу, downto уменьшает счетчик на единицу.