Понятие подпрограммы. Два типа подпрограмм языка QBASIC. Вызов подпрограммы.

 

 

При повторении определённых алгоритмов и действий можно воспользоваться структурой, которая называется подпрограммой, т.е. можно сказать что подпрограммой является набор операторов который обслуживает повторение определённых операций и действий.

 

Два типа:

1.        Подпрограмма без параметров COSUB...RETURN

2.        Подпрограмма с параметрами SUB

  В первом типе к подпрограмме можно обратиться с помощью оператора GOSUB из любой строки основной программы. Когда операторы подпрограммы исполнены и достигнут оператор RETURN, управление автоматически передаётся обратно, к оператору в строке, непосредственно следующий за GOSUB.

 

    Формат записи:

               GOSUB метка

               ……..

               END

              метка: REM начало

               ………

               RETURN

    

  Второй тип иногда называют процедурами, т.е. это последовательность строк программы, расположенная между операторами SUB и END SUB выполняемая при обращении к ней при помощи оператора CALL.

 

 Формат записи:

                 SUB имя ( список параметров)

                 описание переменных

                 операторы

                       [EXIT SUB]

                  END SUB

 

Имя может содержать до 31 символа. Список параметров(не более 16) может содержать имена переменных и массивов.

Отличия типов:

  1. Процедура не обязана возвращать значения, она не имеет типа.

3.        Вызывается оператором CALL, а не из выражения отдельные переменные используемые в процедуре могут быть  объявлены

а) локальными, т.е. действующими только в данной программе (оператор LOCAL)

б) общими,  т.е. действующими как в подпрограмме, так и в основной программе (оператор SHARED)

 в) статическими, т.е. действующими в данной подпрограмме, как LOCAL , но сохраняющими полученные  значения до следующего обращения (оператор STATIC).

Для описания процедуры используется оператор DECLERE SUB имя (параметры), который выполняет проверку аргументов на соответствие типу данных. Оператор необходим при вызове процедур  SUB без использования  CALL.

 BASIC автоматически добавляет DECLARE  при сохранении программы.

Сайт создан в системе uCoz