Здавалка
Главная | Обратная связь

Case селектор: тип Of



ключ-1: (варимант-1);

ключ-2: (вариант-2);

ключ-3: (вариант-3);

……………………

ключ-n:(вариант-n);

End;

Тип селектора и перечень его возможных значений задаются в разделе определения типов Type.

Например, положение точки на плоскости можно задавать прямоугольными (x, y) или полярными (r, φ) координатами. Тогда запись с вариантами coord может быть описана так:

Type TDecpol = (decart, polar);

TCoord = Record

Case wid : TDecpol Of

decart : (x, y : Real);

polar : (r : Real; fi : 0..360);

End;

End;

Var coord : TCoord;

Селектором в данном случае является поле перечисляемого типа coord.wid , принимающее только два значения – decart и polar. При значении селектора decart поля переменной coord будут следующими:

coord.x ,coord.y типа Real,

а при значении поля polar – следующими:

coord.r типа Real,

coord.fi типа 0..360.

При использовании записей с вариантами необходимо руководствоваться следующими правилами:

ü все имена полей должны быть различными, даже если они встречаются в разных вариантах,

ü если вариант пустой (для него поля нет), то он записывается так:

ключ : ();

ü любой список полей может иметь только одну вариантную часть, которая должна следовать за фиксированной частью записи,

ü в свою очередь, каждый вариант может содержать в себе вариантную часть, то есть допускаются вложенные варианты.

Подпрограммы

Современный процесс программирования представляет собой коллективное промышленное изготовление программных продуктов на основе новых технологий программирования.

Одной из таких технологий является метод структурногопрограммирования, предполагающий, что структура программы должна отражать структуру решаемой задачи, а алгоритм решения должен быть ясно виден из текста программы.

Метод структурного программирования предполагает:

· проектирование программ на основе метода пошаговой детализации (нисходящее программирование),

· использование модульного программирования,

· структурное кодирование программы.

Основой метода пошаговой детализации является идея программирования “сверху вниз” с постепенной разбивкой исходной задачи на ряд более мелких подзадач, при этом выполняется последовательное уточнение: сначала задача определяется в общих чертах, затем происходит постепенное уточнение ее структуры. На очередном шаге каждая подзадача, в свою очередь, разбивается на ряд других. Решение отдельного фрагмента сложной задачи может представлять собой самостоятельный программный блок – подпрограмму. Поэтому программу решения сложной задачи при нисходящем программировании можно представить как иерархическую совокупность относительно самостоятельных модулей-подпрограмм. В этом и заключается идея модульного программирования.

Структурное кодирование должно обеспечить максимальное удобство для восприятия и понимания программы человеком. При прочтении программы должна четко прослеживаться логика ее работы. Основная структурная теорема утверждает: алгоритм любой сложности можно реализовать, используя только три конструкции (структуры) - цепочку (следование), ветвление и цикл. Существенной особенностью этих структур является то, что каждая из них имеет только один вход и только один выход, что обеспечивает логическую последовательность структуры программы. Все эти структуры определяются рекурсивно: каждая из входящих в структуру групп операторов может быть одним оператором, группой операторов и может быть любой из допустимых структур – допускается вложение структур.

Длинная программа вообще подобна блюду с макаронами: потянешь за одну макаронину – обязательно что-то поползет в другом месте. Одним из способов разбиения длинных, необозримых программ на обозримые, более короткие, является использование подпрограмм.

В алгоритмах часто встречаются однотипные участки, на которых процесс вычислений носит одинаковый характер, но требует использования различных значений переменных. Для каждого из таких повторяющихся участков может быть составлена отдельная программа, причем в такой форме, что к ней можно было бы обратиться из любого места основной программы, и после ее выполнения вернуться обратно в то место, откуда она была вызвана. Такая отдельная программа, связанная с основной, называется подпрограммой.

Подпрограмма, произведя вычисления при заданных (входных) значениях аргументов, обеспечивает возврат с вычисленными (выходными) значениями в то же место основной программы, откуда подпрограмма вызывалась. Такое построение программы облегчает процесс программирования – большая программа разбивается на отдельные небольшие части, которые легко читаются и понимаются, чем облегчается их отладка и тестирование.

Таким образом, подпрограмма представляет собой относительно самостоятельную программу, которая может быть написана отдельно от других программ, а затем подключена к основной.

Примером подпрограмм являются стандартные функции или библиотечные подпрограммы, имеющиеся в программном обеспечении любого компьютера. В отличие от таких подпрограмм, в дальнейшем мы будем рассматривать подпрограммы, которые создает программист для решения конкретных задач.

В Паскале различают два типа подпрограмм:

1. подпрограммы-функции,

2. подпрограммы-процедуры.







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.