- •Алгоритм, понятие, свойства, форма записи, виды. Понятие языка программирования. Классификация языков программирования
- •Арифметические операции, функции, выражения. Арифметический оператор присваивания "turbo- pascal 7.0. Типы данных.
- •Условный оператор, оператор выбора и безусловного перехода в turbo- pascal 7.0
- •Циклы, виды. Операторы цикла в turbo- pascal 7.0
- •Итерационные циклы.
- •Массивы, виды, описание, использование в программе. Приемы программирования квадратных матриц.
- •Логические величины, выражения, операнды и операции. Логический оператор присваивания. Логические выражения в управляющих операторах.
- •Множества, описание множества, конструктор множества, операции над множествами.
- •Понятие файла и файловой переменной, внешние файлы в turbo- pascal 7.0 (определение, общие принципы работы: создание и обработки)
- •Комбинированный тип данных. Работа с файлами записей. Прямой доступ к записям
- •Строковый тип данных в turbo- pascal 7.0. Стандартные функции по работе со строками.
- •Процедуры пользователя (описание, вызов, структура),
- •Var имя праметра: имя типа
- •Функции пользователя (описание, вызов, структура). Рекурсивные подпрограммы.
- •Понятие текстового файла, определение, общие принципы работы, создание и обработка.
- •Внешние подпрограммы и модули в системе Turbo pascal: определение, назначение, структура
Условный оператор, оператор выбора и безусловного перехода в turbo- pascal 7.0
Условный оператор позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие. Таким образом, условный оператор - это средство ветвления вычислительного процесса.
Структура условного оператора имеет следующий вид:
IF <условие> THEN <оператор1> ELSE <оператор2>;
где IF, THEN, ELSE - зарезервированные слова (если, то, иначе); <условие> - произвольное выражение логического типа; <оператор1>, <оператор2> - любые операторы языка Турбо Паскаль.
Условный оператор работает по следующему алгоритму. Вначале вычисляется условное выражение <условие>. Если результат есть TRUE (истина), то выполняется <оператор1>, а <оператор2> пропускается; если результат есть FALSE (ложь), наоборот, <оператор1> пропускается, а выполняется <оператор2>.
Например:
var
х, у, max: Integer;
begin
.......
if x > max then
у := max else
y := x;
При выполнении этого фрагмента переменная Y получит значение переменной X, если только это значение не превышает МАХ, в противном случае Y станет равно МАХ.
Часть ELSE <оператор2> условного оператора может быть опущена. Тогда при значении TRUE условного выражения выполняется <оператор1>, в противном случае этот оператор пропускается:
var
х, у, max: Integer;
begin
.......
if x > max then
max := x;
Y := x;
В этом примере переменная Y всегда будет иметь значение переменной X, а в МАХ запоминается максимальное значение X.
Поскольку любой из операторов <оператор1> и <оператор2> может быть любого типа, в том числе и условным, а в то же время не каждый из «вложенных» условных операторов может иметь часть ELSE <оператор2>, то возникает неоднозначность трактовки условий. Эта неоднозначность в Турбо Паскале решается следующим образом: любая встретившаяся часть ELSE соответствует ближайшей к ней «сверху» части THEN условного оператора.
Оператор выбора
Оператор выбора (варианта) является обобщением условного оператора и дает возможность выполнить один из нескольких операторов, в зависимости от значения некоторого выражения, которое называется селектором.
В общем случае оператор имеет вид:
CASE <селектор> OF
<список меток 1>: <оператор 1>;
.
<список меток N>: <оператор N>;
END;
где CASE – выбор OF – из END – конец
Селектор – выражение любого скалярного типа, кроме вещественного;
Оператор – любой оператор языка, в том числе и составной;
Список меток – список разделенных запятыми значений выражения селектора
или одного его значения.
Эти константы должны иметь тот же тип, что и селектор, и называются метками варианта.
Оператор варианта выбирает для исполнения тот оператор, одна из меток которого равна текущему значению выражения селектор. По окончанию выполнения выбранного оператора управление передается в конец оператора CASE.
Оператор безусловного перехода
В наше время широко используют структурное программирование, при котором операторы программы выполняются последовательно друг за другом сверху вниз. Однако, бывает случаи, когда есть смысл изменить порядок, например, выход из программы при делении на 0 с выводом сообщения об этом. Для этого существует оператор безусловного перехода GO TO.
GO to_метка;
Действие: обеспечивается переход на оператора с указанной меткой. В качестве метки используют цифры от 1 до 9999, а также буквы.
Правила использования:
1)все метки д.б. описаны в разделе меток:
label метка;
label метка1 метка2, …;
2)областью действия меток является тот блок, где они описаны, передача управления в другой блок запрещена.
3)Рекомендуют применять операторы перехода только вниз (вперед) по тексту
4)Рекомендуемое расстояние между меткой и оператором перехода на нее делать не более 1 страницы текста или высоты экрана дисплея
Оператором безусловного перехода можно пользоваться только в крайнем случае, если без него нельзя обойтись, так как он нарушает последовательное выполнение программы и создает трудности при отладке. Кроме того, в такой программе программисту трудно разобраться в тексте программы.
Пример: выйти из пр-мы, если аргумент принял 0-ое значение (может быть деление на 0), и выдать сообщение об этом.
Label 1,2;
………
If (z=0) then GO TO 1;
Else begin y:=a/z; GO TO 2;
End;
……….
1: writeln(‘деление на 0’);
2: end.