Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



Когда некоторая совокупность действий должна выполняться в нескольких различных местах программы, обычно нежелательно каждый раз повторять группу операторов, реализующих эти действия. Чтобы избежать повторений, указанную группу операторов можно записать в программе один раз и обращаться к ней, когда в этом возникает необходимость. Обособленную группу операторов, которую можно выполнять многократно, обращаясь к ней из различных мест программы, называют подпрограммой. Подпрограмма – это самостоятельная программная единица, которая находится под управлением основной программы.

Подпрограммы могут быть внутренними, то есть подпрограмма привязана к основной программе, и внешними, которые располагаются на каком-либо носителе информации.

Здесь будут рассматриваться внутренние подпрограммы.

Для подпрограмм характерными являются описание и обращение.

Описание внутренней подпрограммы может начинаться с любой строки, но нагляднее (особенно при большом количестве подпрограмм) с комментария, который отражает функциональную сущность подпрограммы. Далее следуют операторы для выполнения подпрограммы. Подпрограмма должна обязательно заканчиваться оператором, который осуществляет возврат в основную программу. Для этого используется оператор со следующей синтаксической структурой:

нс RETURN, где

Return – ключевое слово “вернуться”.

Структура описания подпрограммы:

нс <комментарий>

… операторы

… подпрограммы

RETURN,

Количество операторов RETURN может быть любым.

В QB и TB можно использовать номер строки или метку.

Обращение к подпрограмме осуществляется в основной программе по формату:

GOSUB нс (или метки),

где GOSUB – ключевое слово “идти к”; номер строки или метка указывают, к какой подпрограмме обращается основная программа. Для подпрограмм желательно использовать большие номера, например, начиная с 1000. Подпрограммы располагаются в конце основной программы и должны обязательно отделяться от основной программы оператором STOP для GB, или оператором END для QB и TB.

Правило выполнения подпрограммы:

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

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

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





Дата публикования: 2014-12-25; Прочитано: 155 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...