Очень распространенной задачей является программирование процессов с несколькими исходами – ветвящихся процессов.
Задача 1. Для произвольного аргумента Х вычислить значение кусочно-ломаной функции Y(X) (рис. 2).
Одно из возможных решений задачи приведено на рис. 3 и 4. Здесь имена переменных отображены строчными буквами, а ключевые слова – прописными только для наглядности. Как уже указывалось, регистр букв безразличен – в Бейсике они воспринимаются одинаково.
| |
| | | Программы к задаче 2
INPUT a,b,c INPUT a,b,c
IF a+b>=c GOTO 7 IF a+b<c GOTO 9
? “Неверно”: END IF b<=a GOTO 9
7 IF b>a THEN ? “Верно”:END ? “Верно”: END
? “Неверно” 9 ? “Неверно”
Рис. 6 Рис. 7
| |
Здесь используется помеченный оператор (2 PRINT y). Необходимость в этом возникла вследствие потребности перейти к печати от операторов IF, минуя оператор y=10-0.5*x. В данном случае метка может быть любым числом, а не только 2. Замечание. В блок-схеме, на связях имеющих очевидное направление, стрелки можно не указывать.
Отметим, что практически любая задача может быть запрограммирована различными способами. Например, здесь возможно и такое решение.