- •Автономная некоммерческая организация высшего профессионального образования «Брянский институт управления и бизнеса»
- •Методические пособие по изучению алгометрического языка pascal
- •Оглавление
- •Введение
- •Глава 1 основные понятия .
- •Алфавит языка.
- •Основные определения языка.
- •Составные части программы.
- •Вопросы для самоконтроля
- •Глава 2 стандартные типы данных
- •Данные целого типа.
- •Вычисление об"ема шара
- •Данные действительного типа.
- •Данные логического типа.
- •Данные символьного типа.
- •`Теплоход``маяк``` или `д``артаньян`
- •Описание констант и переменных.
- •Var_имя переменной: тип;
- •Вопросы для самоконтроля
- •Глава 3 выражения.
- •3.1. Стандартные функции.
- •3.2. Арифметические выражения.
- •3.3. Логические выражения.
- •Вопросы для camokohtpoля
- •Глава 4 основы программирования простых задач.
- •4.1. Оператор присваивания.
- •4.2. Понятие о составном и пустом операторах. Назначение символа точки с запятой.
- •Простейший ввод данных.
- •5 Позиций
- •8 Позиций
- •Примеры программирования простых задач.
- •Вопросы для самоконтроля
- •5.1. Условный оператор.
- •Оператор выбора.
- •Оператор перехода.
- •Go to метка
- •Lавеl метка;
- •Label метка 1, метка 2,…, метка n;
- •5.4.Примеры программирования вычислительных процессов с разветвлениями.
- •Глава 6 организация циклических прцессов.
- •Оператор цикла с предварительным условием.
- •Оператор цикла с последующим условием.
- •Операторы циклической части программы
- •Оператор цикла с параметром.
- •Вложенные циклы.
- •Глава 7 основы ввода и вывода.
- •7.1. Оператор ввода.
- •7.2. Оператор вывода
- •Программирование циклических вычислительных процессов.
- •Вопросы для самоконтроля
- •Глава 8 Переменные типы.
- •Перечислимый тип данных.
- •Var а: (зима, весна, лето, осень);
- •Ограниченный тип данных.
- •Вопросы для самоконтроля
- •Глава 9 Сложный тип данных – массивы.
- •Понятие массива.
- •Var_имя массива: array [t1] of_t2;
- •Тип массива.
- •Упакованные массивы.
- •Понятие многомерных массивов.
- •Глава 10 Сложный тип данных – множества.
- •10.1. Множества в языке Паскаль.
- •Var _имя множества: set_of_ базовый тип;
- •Примеры программирования задач с использованием множества
- •Вопросы для самоконтроля
- •Глава 11 Сложный тип данных – записи.
- •Понятие записи.
- •Оператор присоединения.
- •Вопросы для самоконтроля
- •Глава 12 Подпрограммы.
- •Общие сведения.
- •Процедуры и функции.
- •Вопросы для самоконтроля
- •Глава 13 Файлы
- •13.1. Понятие файла.
- •13.2. Чтение файла.
- •13.3. Запись файла.
- •13.4 Чтение и запись файла
- •Вопросы для самоконтроля
Оператор выбора.
Оператор выбора (варианта) используется в тех случаях, когда в зависимости от значения какого-либо выражения необходимо выполнить один из нескольких последовательных операторов. Оператор выбора относится к сложным и имеет следующую форму записи:
CASE _выражение _ OF
константа 1: оператор 1;
константа 2: оператор 2;
… … … … … … … … …
константа n: оператор n
END;
Здесь CASE (в случае), OF (из), END (конец) - служебные слова.
Оператор выбора действует следующим образом.
Если значение выражения равно одной из констант, то выполняется соответствующий ей оператор. Затем управление передается за пределы оператора выбора.
Если значение выражения не совпадает ни с одной константой, то управление передается за пределы группы.
Выражение может быть любым стандартным типом, кроме действительного (REAL). В соответствии с этим и константа не может быть действительного типа. Тип константы должен совпадать с типом выражения. Пример записи оператора выбора:
CASE K+1 OF
5: Y:=SQR(X);
11: Y:=SQRT(X);
4: Z:=4*(A–B)
END;
Если значение K+1 будет равно 5, то выполнится оператор присваивания Y:=SQR(X) и управление будет передано на оператор, расположенный после слова END. Аналогично, если значение К+1 будет равно 11, 4 или 7, то выполнится один соответствующий оператор и управление будет передано за пределы оператора выбора.
Переменная K должна быть объявлена как переменная целого типа. Кроме того, К, X, А, В должны получить значения до выполнения оператора CASE.
В операторе выбора в качестве константы допускается использование списка констант, например:
CASE S OF
‘+’, ‘– ‘, ‘*’, ‘/’: P:=1;
‘A’, ‘B’: P:=2;
’.’: P:=3;
END;
Переменная S должна быть объявлена в разделе описаний как символьная. Если значением S будет один из знаков ' + ', ‘ – ‘ , ' * ', ' / ', то переменная Р получит значение 1. Если значением S будет символ 'А' или 'В', то P получит значение 2. Если значением S будет знак точки '.', то переменной P будет присвоено значение 3.
Пример 5.4. Ввести номер дня недели и вывести соответствующий ему день недели на русском и английском языках. Ниже представлена программа 5.2 и ответ для введенного номера недели 5.
Программа 5.2
(*ДЕНЬ НЕДЕЛИ*)
PROGRAM E32;
VAR N:INTEGER; (*НОМЕР ДНЯ НЕДЕЛИ *)
BEGIN
WRITELN('ВВЕДИТЕ НОМЕР ДНЯ НЕДЕЛИ:’);
READ(N);
CASE N OF
1: WRITELN (‘ПОНЕДЕЛЬНИК - MONDAY' );
2: WRITELN (‘ВТОРНИК - TUESDAY' );
3: WRITELN (‘СРЕДА - WEDNESDAY' );
4: WRITELN (‘ЧЕТВЕРГ - THURSDAY' );
5: WRITELN (‘ПЯТНИЦА – FRIDAY’ );
6: WRITELN (‘СУББОТА - SATURDAY' );
7: WRITELN (‘ВОСКРЕСЕНЬЕ - SUNDAY' )
END;
END.
ВВЕДИТЕ НОМЕР ДНЯ НЕДЕЛИ:
5
ПЯТНИЦА – FRIDAY
Оператор CASE может использоваться с ключевым словом ELSE, имеющим тот же смысл, что и слово ELSE в операторе IF.
CASE _выражение _ OF
константа 1: оператор 1;
константа 2: оператор 2;
… … … … … … … … …
константа n: оператор n
else оператор
END;
Перед ELSE, как и в операторе IF, точка с запятой не ставится.
Пример 5.5
PROGRAM PR;
VAR
I:CHAR;
BEGIN
READLN(I);
CASE I OF
‘A’, …’Z’:WRITELN (‘ВВЕДЕНА БУКВА’);
‘0’ …’9’:WRITELN(‘ВВЕДЕНА ЦИФРА’);
ELSE WRITELN(‘ВВЕДЕН СИМВОЛ ОТЛИЧНЫЙ ОТ БУКВЫ И ЦИФРЫ’);
END
EMD.
