ВУЗ:
Составители:
Рубрика:
другим переменным программы с тем же именем. Как и для функции, по-
ложение процедуры не существенно, кроме того, нельзя "случайно" по-
пасть в процедуру непосредственно от предыдущего оператора, ни с по-
мощью операторов GOTO, GOSUB или RETUN, хотя внутри процедуры эти
операторы действуют. Определения процедур не могут быть вложенными,
хотя внутри процедуры могут быть вызовы других процедур и функций.
Все переменные в процедуре по умолчанию являются локальными.
Локальные переменные являются динамическими: место под них выделя-
ется лишь при выполнении процедуры, после же выполнения процедуры
они автоматически пропадают. Однако можно объявить или с помощью
оператора SHARED глобальные переменные (переменные, которые берут
свои значения из предыдущих программных строк), или с помощью опера-
тора STATIC статические переменные (переменные, для которых важно,
чтобы они не изменились при повторных вызовах).
Определение процедуры должно заканчиваться оператором END
SUB, который возвращает управление в программу, передавая его к опера-
тору, следующему за вызовом процедуры. Для выхода из процедуры в про-
извольном месте используется оператор EXIT SUB.
Для вызова процедуры используется оператор CALL, имеющий фор-
мат:
CALL имя ([список параметров])
имя − это имя процедуры, определенной с помощью оператора SUB;
список параметров − это последовательность разделенных запятыми
переменных, выражений или констант, передаваемых процедуре, в качест-
ве фактических параметров (по типу они должны соответствовать фор-
мальным параметрам в определении процедуры).
Ниже приведена, программа для вычисления суммы S=
∑
=
−
6
1i
2
ii
)ba(
i
,
где
⎩
⎨
⎧
−
−
=
нечетноеiесли,i
четноеiесли,i
a
2
i
,
⎩
⎨
⎧
−
−
=
нечетноеiесли,i
четноеiесли,i
a
3
2
i
.
FOR i=1 TO 6
CALL ab(i)
s=s+(a-b)^2
NEXT
PRINT "S="; s
END
другим переменным программы с тем же именем. Как и для функции, по-
ложение процедуры не существенно, кроме того, нельзя "случайно" по-
пасть в процедуру непосредственно от предыдущего оператора, ни с по-
мощью операторов GOTO, GOSUB или RETUN, хотя внутри процедуры эти
операторы действуют. Определения процедур не могут быть вложенными,
хотя внутри процедуры могут быть вызовы других процедур и функций.
Все переменные в процедуре по умолчанию являются локальными.
Локальные переменные являются динамическими: место под них выделя-
ется лишь при выполнении процедуры, после же выполнения процедуры
они автоматически пропадают. Однако можно объявить или с помощью
оператора SHARED глобальные переменные (переменные, которые берут
свои значения из предыдущих программных строк), или с помощью опера-
тора STATIC статические переменные (переменные, для которых важно,
чтобы они не изменились при повторных вызовах).
Определение процедуры должно заканчиваться оператором END
SUB, который возвращает управление в программу, передавая его к опера-
тору, следующему за вызовом процедуры. Для выхода из процедуры в про-
извольном месте используется оператор EXIT SUB.
Для вызова процедуры используется оператор CALL, имеющий фор-
мат:
CALL имя ([список параметров])
имя − это имя процедуры, определенной с помощью оператора SUB;
список параметров − это последовательность разделенных запятыми
переменных, выражений или констант, передаваемых процедуре, в качест-
ве фактических параметров (по типу они должны соответствовать фор-
мальным параметрам в определении процедуры).
6
Ниже приведена, программа для вычисления суммы S= ∑ (a ii − b i ) 2 ,
i =1
⎧i, если i − четное ⎧i , если i − четное
2
где a i = ⎨ 2 , ai = ⎨ 3 .
⎩i , если i − нечетное ⎩i , если i − нечетное
FOR i=1 TO 6
CALL ab(i)
s=s+(a-b)^2
NEXT
PRINT "S="; s
END
Страницы
- « первая
- ‹ предыдущая
- …
- 36
- 37
- 38
- 39
- 40
- …
- следующая ›
- последняя »
