[CALL] name [ < [argumentlist]) ] (3.7).
В основной программе подпрограмма-процедура должна быть объявлена командой DECLARE (среда QBasic создает ее автоматически при вводе текста подпрограммы). По умолчанию CALL список аргументов не заключается в скобки. Имена или значения данных в списке аргументов разделяются запятыми. Для того, чтобы значение аргумента не могло быть изменено процедурой, его имя в списке должно быть заключено в скобки. При использовании массива в качестве аргумента за его именем должна следовать пустая пара скобок ().
При программировании часто использовались определенного вида конструкции из операторов условного и безусловного перехода. От таких конструкций ведут свое происхождение используемые при структурном безметочном программировании
СОСТАВНЫЕ ОПЕРАТОРЫ
УСЛОВНЫЙ ОПЕРАТОР
позволяет выполнять различные участки текста в зависимости от некоторых условий, не используя метки. Он существует в двух формах:
Однострочная форма
XF condition THEN statements [ELSE statements] (3.8)
и многострочная форма
IF conditioni THEN (3.9)
[statementblock-l]
[ELSEIF condition2 THEN
[statementblock-2]]... [ELSE
[statementblock-n]]
END IF
Где: condition conditioni . condition2 — любое выражение логического или числового типа, которое может иметь значение истина или ЛОЖЬ, statementblock-l statenientblock-2...statementblock-n— блок операторов и statements — один или более операторов разделенных двоеточиями.
В однострочной форме при истинности выражения выполняется блок операторов, следующий за THEN, в противном случае — за ELSE. В однострочном варианте блок операторов может быть пустым, содержать один оператор или несколько операторов, разделенных двоеточиями. Умолчание блока с ELSE означает, что в случае невыполнения условия оператор IF не делает ничего.
В многострочной форме выражение и блок операторов имеют тот же смысл, но операторы в блоке могут быть записаны и в следующих одна за другой строках. В отличие от однострочной формы здесь в случае ложности первого условия проверяется еще одного условие, заданное выражением после ELSEIF. При истинности первого условия выполняется блок