Сведения, необходимые для выполнения работы
Оператор условного перехода реализует разветвляющейся алгоритм и имеет вид: IF условие THEN оператор1 ELSE оператор2;. где IF - если, THEN - тогда, ELSE - иначе; оператор1, 2 - любой оператор. При выполнении условия работает оператор1 и управление передается далее. При невыполнении условия работает оператор2, после управление передается на следующий за IF оператор. В качестве оператора1, 2 может быть составной оператор. Перед ELSE точку с запятой ставить нельзя! Допускается краткая (неполная) форма условного оператора: IF условие THEN оператор1; Оператор безусловного перехода. Иногда использование условных операторов усложняет программу. Обычно это связывается с обработкой исключительных ситуаций. Для этого существует оператор безусловного перехода GOTO. С его помощью естественный порядок выполнения программы прерывается и указывается, что дальнейшее должен выполняться оператор, помеченный меткой. Метка до использования указывается в разделе описания меток LABEL. Метка – это целое, без знака число от 0 до 9999. При помощи метки нельзя войти во внутрь цикла, минуя его заголовок и передавать управление из одной ветви условного оператора в другую. Оператор выбора. При написание программы не рекомендуется использовать многократно вложенные друг в друга условные операторы (максимум два – три). Но если необходимо применить много условий используется оператор выбора CASE: CASE индекс выбора OF константа_выбора1: оператор1; ……………………………………………..; константа_выбораN: операторN; Оператор выбора состоит из выражения – индекса выбора и списка операторов, каждый из которого помечен константой выбора или несколькими. Все константы должны быть различными, их тип – идентичен типу выражения (индекса выбора) - простой тип за исключением REAL. В операторе выбора можно использовать диапазоны для констант выбора. При выполнении оператора сначала вычисляется значение индекса выбора, а затем выбирается для выполнения тот оператор из списка, который содержит данное значение константы выбора. Если подходящей константы выбора нет, то возникает ошибка и выполнение всей программы завершается. В каждом элементе выбора можно использовать только один оператор или использовать составной оператор. Все константы выбора внутри одного CASE обязательно должны быть различными. В различных операторах выбора разрешается использовать одинаковые константы выбора.
Оператор цикла со счетчиком служит для организации цикла с известным числом повторений и имеет вид: FOR I: = N ТО К DO оператор; где FOR - для, TO - до, DO – выполнить, I - параметр цикла, N – его начальное значение и К – конечное значение, оператор, выполняющийся в цикле. Оператором цикла может быть составной оператор. После DO нельзя ставить точку с запятой, т. к. в цикле будет выполняться пустой оператор. I, N, К - целого типа. Начальным и конечным значением могут быть константы или выражения. N<К и шаг изменения параметра 1. Вычисляются выражения N и К или берутся введенные значения. Параметр цикла I принимает начальное значение N и сравнивается с конечным значением К. Если параметр цикла не превышает К, управление передается в тело цикла и выполняются операторы. Затем параметр цикла увеличивается на 1 и работа повторяется, выход из цикла происходит когда параметр цикла превысит К. Если N>К, шаг изменения параметра равен -1, тогда оператор имеет вид: FOR I: = N DOWNТО К DO оператор; В цикле FOR …DOWNTO если параметр цикла не меньше К, управление передается в тело цикла и выполняются операторы. Затем параметр цикла уменьшается на 1 и работа повторяется, выход из цикла происходит когда параметр цикла станет меньше К. После завершения цикла значение параметра не определено.
Если в цикле FOR ТО начальное значение больше конечного, а в цикле FOR … DOWNTO - меньше, то цикл не выполняется ни разу. Оператор цикла с предусловием используется, когда неизвестно количество повторений. Общий вид записи оператора цикла с предусловием: WHILE условие DO оператор; где WHILE - пока, DO - выполнить, условие - условие работы цикла. В качестве оператора может применяться составной оператор. При выполнении условия управление переходит в тело цикла и работают операторы, после чего проверяется условие и все повторяется. Как только условие не выполняется, происходит выход из цикла. Оператор тела цикла может ни разу не обрабатываться, если условие сразу не выполнимо. Значение переменных в условии должны изменяться в теле цикла, иначе цикл будет бесконечным. Оператор цикла с постусловием. Общий вид записи оператора цикла с постусловием: RЕРЕAТ оператор UNTIL условие; где RЕРЕAТ - повторить, UNTIL - до тех пор, условие - условие прекращения работы цикла. Сначала выполняются операторы цикла, затем проверяется условие выхода. Если оно не выполняется, то управление передается в цикл. Если условие истинно, происходит выход из цикла. Особенность цикла - операторы тела цикла выполняются хотя бы раз. Значения переменных, входящих в условие, должны изменяться внутри цикла, иначе цикл никогда не завершится. Если в цикле необходимо выполнить несколько операторов, то служебные слова цикла сами являются как бы операторными скобками и применение BEGIN и END не обязательно. Одну и ту же задачу можно решить при помощи любого из циклов WHILE или REPEAT. При этом условия должны быть прямо противоположными. Задание: Выбрать из курса Математики систему уравнений, состоящую как минимум из трех уравнений, выявить для нее граничные условия изменения аргумента и входные данные в виде констант. Разработать алгоритм и блок-схему к нему поместить в отчет. Составить числовую ось изменения аргумента и в соответствии с ней ввести данные и зафиксировать результат, т. е. протестировать программу. Решение системы уравнений представить в виде трех программ на языке ТР: циклов со счетчиком, с пред- и пост-условием.
Вычислить и вывести на экран в виде таблицы значений аргументы и функции. Каждая строка таблицы должна содержать изменяемые значение аргумента и значение функции, а также порядковый номер выполняемого действия. Проанализировать полученные результаты и поместить их в отчет. Вопросы для самоконтроля: 1. Приведите реальные ситуации, решение которых можно реализовать при помощи алгоритмов разветвляющихся процессов. 2. Какие конструкции аналогичны проверке условия и осуществляют переход? 3. Опишите оператор условия и приведите примеры его использования. 4. Приведите примеры использования оператор выбора. 5. Приведите примеры использования оператора безусловного перехода. 6. Как группируются составные операторы? 7. Почему будет ошибкой ставить; в середине операторов? 8. Привести примеры задач или реальные ситуации, для которых можно использовать цикл со счетчиком, шаг изменения параметра которого равен -1. 9. Какой цикл может не обрабатываться ни разу, если условие сразу не выполнимо, а какой выполнится хотя бы один раз? Литература: 1, 2, 3, 4, 5, 7, 9, 14, 16, 36. Лабораторная работа № 3. Тема: Обработка структурированных типов данных. Цель: Изучить способы описания и основные принципы обработки массивов на ЯП TP.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|