Модификация оператора GO TO
Как уже ранее рассматривалось, оператор GO TO является оператором перехода, с помощью которого можно передавать управления в любую часть программы. При этом мы рассматривали безусловную модификацию оператора GO TO, когда управление обязательно передавалось на метку, которая указывалась за оператором GO TO.
Существует вторая модификация оператора
GO TO: вычисляемый.
GO TO(m1, m2, m3, …, mn) арифметическое выражение
Пример:
GO TO(5, 4, 1, 5) A*SIN(X)
Происходит вычисление арифметического выражения и полученный результат приводится к целому типу. Если полученный результат имеет значение 1, то оператор GO TO передаёт управление на первую метку, т.е. на метку 5, если равен 2, то на метку 4 и т.д. Если значение арифметического выражения меньше 1 либо больше n , то оператор GOTO не выполняется.
Оператор GOTO по предписанию
GOTOцелая переменная (метки)
Где: целая переменная определяется в специальном операторе ASSIGN. Оператор назначает номер метки переменной целого типа. А оператор GOTO по предписанию может осуществить переход на одну из перечисленных меток в зависимости от значения целой переменной.
IF (A .GT. B) THEN
ASSIGN 10 TO MET
ELSE IF (A .EQ. B) THEN
ASSIGN 20 TO MET
ELSE
ASSIGN 25 TO MET
END IF
Затем осуществим переход на одну из меток:
GOTO MET (10,20,25)
….
….
….
10 WRITE …
…
20 IF …
…
25 WRITE …
Если значение MET совпадает с любой из меток списка, то осуществляется переход на эту метку. Если MET не совпадает ни с одной из меток списка, то оператор GOTO не выполняется.
Дата добавления: 2015-06-10; просмотров: 686;