Вычисляемый оператор перехода
Вычисляемый оператор переходапозволяет осуществлять в программах разветвления вычислительного процесса. Этот оператор имеет следующий формат: GO TO (m1, m2,….mn), K где m1, m2, …mn – список меток операторов, K – простая переменная целого типа.
При выполнении программы значения переменной K истолковывается как порядковый номер метки из списка меток, заключенного в скобки. Пример: GO TO (12, 29, 34, 2), K Выполнение этого оператора состоит в выборе одной из возможных ветвей вычислений. Если К = 1, то осуществляется переход к оператору с меткой 12; если К = 2, то к оператору с меткой 29; если К = 3 к метке 34, при К = 4 к метке 2. При использовании вычисляемого оператора перехода необходимо соблюдать следующие правила: 1) список операторов, которым можно передавать управление, заключается в скобки; метки в списке разделяются запятыми; 2) запятая должна ставиться и после закрывающей скобки; 3) управляющая переменная может принимать значения от 1 до n; если она выходит из этого диапазона значений, что оператор считается неопределенным, и результат его действий является непредсказуемым; 4) если за оператором перехода записаны какие–либо другие операторы, то первый из них должен быть помеченным.
2.5 Условный арифметический оператор IF: Условный арифметический оператор имеет следующий вид: IF (A) n1, n2, n3 где А– арифметическое выражение целого или вещественного типа n1, n2, n3 – метки операторов. Действие операторов сводится к следующему: - если значение арифметического выражения в скобках отрицательно, то управле ние передается оператору с меткой n1; - если значение А равно нулю, то управление передается на метку n2; - если значение А положительно - на n3. Как и в случае операторов перехода, если за условным арифметическим оператором следуют другие операторы, то первый должен иметь метку:
Пример 1: Вычислить функцию Z по одной из следующих формул:
Соответствующий фрагмент программы может быть представлен так:
IF (X – Y) 35, 40, 45 35 Z = X * X – Y * Y GO TO 50 40 Z = X * X + Y * Y GO TO 50 45 Z = X ּ Y 50 PRINT*,’Z=’,Z
Следует обратить внимание на необходимость двух операторов безусловного перехода. GO TO 50. При отсутствии, например, первого из них, после оператора с меткой 35 выполнялся бы оператор с меткой 40, что приводило бы к неверному результату. Таким образом, с помощью арифметического оператора IF обеспечивается разветвление программы на три ветви, однако, если требуется выполнить разветвление расчета только по двум ветвям, то одна из меток в операторе IF должна быть повторена дважды. Пример 2 ( I), II)): функция f (x) задана соотношением: I) II)
С помощью арифметического оператора IF разветвление в программе может быть выполнено следующим образом. Блок-схема на (рис. 4, а) ):
Результат:
I) IF (X) 27, 28, 27 II) IF(X-1) 3, 4, 4 27 F = SIN (X) / X 3 F=1. GO TO 50 GO TO 5 28 F = 1.0 4 F=X*X 50 PRINT*, ’F=’, F и т.д. 5 PRINT *, ‘F=’ , F и т.д.
Популярное: Организация как механизм и форма жизни коллектива: Организация не сможет достичь поставленных целей без соответствующей внутренней... Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (382)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |