- •Министерство образования и науки российской федерации
- •Оглавление предисловие
- •Составление структурных схем алгоритмов и программ
- •Пример 1
- •Пример 2
- •Задания
- •Пример 3
- •Задания
- •Пример 4
- •Пример 5
- •Задания
- •Алфавит языка pascal. Типы данных. Раздел описаний. Оператор присваивания. Ввод-вывод. Составление простейших программ
- •Стандартные процедуры
- •Стандартные функции
- •Пример 1
- •Пример 2
- •Задания
- •Пример 3
- •Задания
- •Задания
- •Использование переменных логического типа. Логический оператор присваивания
- •Логический оператор присваивания
- •R операция_сравнения s
- •Пример 1
- •Задания
- •4. Программирование разветвляющихся структур
- •4.1. Использование в программах условного оператора
- •Пример 1
- •Задания
- •4.2. Использование в программах оператора варианта
- •Case выражение-селектор of метка_случая : оператор;
- •Пример 1
- •Задания
- •5. Использование переменных типа char
- •Задания
- •6. Реализация циклических структур
- •6.1. Применение оператора цикла с параметром
- •Шаг изменения параметра цикла:
- •Пример 1
- •Задания
- •Пример 2
- •Пример 3
- •Задания
- •Пример 4
- •Задания
- •Таким образом изображаются циклы в структурных схемах (в лабораторных работах, курсовых работах и т.Д.). Пример 5
- •Задания
- •Задания
- •Пример 6
- •Задания
- •Не смотря на то, что есть еще другие операторы цикла, обычно вводят и выводят массивы с помощью оператора цикла с параметром.
- •6.2. Применение оператора цикла с постусловием
- •Пример 1
- •Задания
- •6.3. Применение оператора цикла с предусловием
- •Основные различия между операторами циклов с постусловием и предусловием
- •Пример 1
- •Задания
- •6.4. Работа с двухмерными массивами.
- •Задания
- •Пример 1
- •Задания
- •7. Поиск и сортировка числовых данных
- •Пример 1
- •Задания
- •8. Решение задач с применением подпрограмм
- •Procedure имя(список параметров);
- •Var идентификаторы:имя типа;...; var идентификаторы: имя типа
- •Var идентификаторы:имя типа;...;var идентификаторы: имя типа;...; идентификаторы:имя типа;...;идентификаторы:имя типа
- •Идентификаторы:имя типа;идентификаторы:имя типа; ...;идентификаторы:имя типа
- •Локальные переменные доступны только внутри процедур, в которых они определены!
- •Пример 1
- •Задания
- •9. Использование переменных перечисляемого типа
- •Ввод и вывод значений переменных перечисляемого типа запрещен.
- •Задания
- •10. Использование переменных ограниченного типа
- •Задания
- •11. Использование переменных множественного типа
- •Var идентификатор : set of порядковый тип;
- •Запрещен.
- •Правила приоритета для множественных операций:
- •Задания
- •12. Использование записей
- •With префикс[,префикс [...]] do оператор
- •Пример 1
- •Задания
- •13. Работа со строками
- •Каждая переменная типа string вводится отдельной процедурой readln
- •Пример 1
- •Задания
- •14. Работа с файлами
- •Пример 1
- •Пример 2
- •Пример 3
- •Задания
- •Библиографический список
10. Использование переменных ограниченного типа
Тип, который определяется как подмножество другого, уже определенного типа, называется ОГРАНИЧЕННЫМ (типом-диапазоном).
В качестве базового может выступать любой порядковый тип, кроме типа диапазона. Определение ограниченного типа для типа REAL не допускается.
Ограниченный тип задается границами своих значений внутри базового типа:
<min значение>..<maxзначение>
где <min значение> - наименьшее значение;
<max значение> - наибольшее значение;
.. - специальный символ, которым разделяются границы типа - диапазона.
Общий вид описания ограниченного типа следующий:
TYPE
<Имя типа>=<Нижняя граница>..<Верхняя граница>;
Общий вид описания переменных ограниченного типа следующий:
VAR
<Имя переменной>:<Нижняя граница>..<Верхняя граница>;
или
VAR
<
причем,
Нижняя граница <= Верхняя граница
Ограниченный тип сохраняет все свойства, характерные для производного типа, и отличается лишь тем, что имеет ограниченный диапазон значений.
В выражениях, вычисляющих значения некоторого типа, можно использовать переменные как ограниченного типа, так и соответствующего ему базового типа - принадлежность переменной ограниченному типу учитывается лишь при присваивании значения этой переменной.
Введение ограниченного типа улучшает читабельность программ, так как представляет диапазон значений, которые может принимать переменная этого типа.
Примеры заданий ограниченных типов и переменных ограниченного типа:
Type
days =1..31; {дни месяца}
month=1..12; {месяцы}
napravlenie=(sever,ug,vostok,zapad); {перечислимый тип}
Var
a,b:days;
nedely:1..7;
x:month;
m:array [month] of days; {массив ограниченного типа}
world:ug..zapad;
Задания
№1. Имеются описания:
Type digit='0'..'9';
Var d:digit; k:0..9; n:integer;
Допустимы ли присваивания:
1) d:='7'; 2) d:='a'; 3) d:=7; 4) k:=5; 5) k:=10;
6) k:=-0; 7) k:='5'; 8) k:=ord(d); 9) k:=ord(d)-ord('0')?
№2. Указать ошибки в следующих описаниях:
const n=180; e=2.7;
type cifra='0'..'9';
bukva=a..z;
ugol =-n..n;
otrezok=0..n-1;
period=-e..e;
plus='+'..'+';
Color=(White,Red,Blue,Yellow,Purple,Green,
Orange,Black);
c_r =Blue..Green;
c_r2=Orange..Red;
№3. Имеется описание:
Var k:1..9;
Написать программу, которая будет печатать значение переменной k римскими цифрами.
11. Использование переменных множественного типа
В качестве базового типа множества может выступать любой простой порядковый тип (integer,char или какой-нибудь иной, определенный программистом).
Максимально возможное число значений - 256. Для целочисленных множеств могут присутствовать числа не меньше 0 и не больше 255.
Порядок элементов во множестве не имеет значения, т.е. [2,4,6] и [4,2,6] - одно и то же множество.
Многократное повторение какого-либо элемента никак не влияет на состав множества, т.е. [2,2,4,6] и [4,2,6,4] - одно и то же множество.
Объявление множества: