4.5. Оператор безусловного перехода
Несмотря на то, что язык графического калькулятора CASIO является структурным языком программирования, в операторах ветвления может использоваться оператор безусловного перехода Goto, имеющий следующую структуру:
- <Lbl M> - метка, где М - любая цифра или буква латинского алфавита;
- <Goto M> - оператор, обеспечивающий безусловный переход к метке Lbl M.
Если в программе есть запись вида:
метка: оператор
то после выполнения оператора безусловного перехода выполняется оператор с соответствующей меткой, а далее выполнение программы продолжается с этого места.
Следует применять данный оператор при создании простых программ, чтобы избежать путаницы при создании безусловных переходов.
В настоящее время применение оператора безусловного перехода считается плохим тоном в программировании и часто говорит о низкой квалификации программиста, но, тем не менее, в языках программирования, подобных языку программирования CASIO, оператор безусловного перехода может успешно применяться для решения задач, подобных примеру 17. Здесь удобно применять циклический оператор с постпроверкой условия, но сначала следует более наглядно рассмотреть решение с оператором ветвления.
Пример 17.
Вычислить значение переменных x, y, z в соответствии с алгоритмом сначала с оператором ветвления, затем с циклическим оператором:
Следует обратить внимание на то, что данная задача решается по обратному условию.
Решение с использованием оператора ветвления:
10→X↵
180→Y↵
270→Z↵
Lbl M : If X<Y↵
Then X2
→X ↵
IfEnd ↵
Y+X→Y ↵
Z-Y-X→ Z ↵
If Y<Z↵
Then Goto M ↵
IfEnd↵
X
Y
Z
"END" : Stop
Ответ: x = 100, y = 280, z = -110.
Решение с использованием циклического оператора:
10→Х ↵
180→Y ↵
270→Z ↵
While Y<Z ↵
If X<Y ↵
Then X2
→X ↵
IfEnd ↵
X+Y→Y ↵
Z-Y-X→Z ↵
WhileEnd ↵
X
Y
Z
"END" : Stop
Ответ: x = 100, y = 280, z = -110.
Задачи
67. Ввести n вещественных чисел. Определить, сколько среди них отрицательных чисел.
68. Ввести n вещественных чисел. Определить, сколько среди них положительных чисел.
69. Ввести n вещественных чисел. Найти их сумму.
70. Ввести n вещественных чисел. Определить сумму чисел, стоящих на четных местах в этой последовательности.
71. Ввести n вещественных чисел. Определить сумму положительных чисел.
72. Ввести n вещественных чисел. Определить сумму отрицательных чисел.
73. Ввести целое k от 1 до 180. Определить, какая цифра находится в k-ой позиции последовательности 10111213...9899, в которой выписаны подряд все двузначные числа.
74. Вычислить с - наибольший общий делитель натуральных чисел а и b.
75. Для заданного числа а найти корень уравнения f (x) = 0, где
76. Ввести число х. Напечатать в порядке возрастания числа x, (1 + |x|) и (1 + х2).