http://laska-samp.biz/informatika/articles/qbsk/fynkcii
Информатика :: Теория, задания, программирование :: QBasic

Подпрограммы: Функции.

Функции отличаются от процедур тем, что не только выполняют определенные действия, но еще и возвращают вызывающей программе какое-то значение.
Процедуры и функции бывают стандартными и нестандартными. Стандартные подпрограммы входят в  библиотеку, которая поставляется вместе с системой программирования. Нестандартные процедуры и функции программисты пишут сами.
FUNCTION имя (список параметров)
тело функции - список операторов
END FUNCTION
Пример: функция возвращающая куб числа
FUNCTION kub (x)
kub=x*x*x
END FUNCTION
REM Вывод кубов натуральных чисел от 1 до 10
CLS
FOR I=1 TO 10
PRINT kub(I)
NEXT
END
В этой программе в цикле происходит обращение к функции kub, которая вычисляет куб числа.
Процесс, когда в процедуре происходит обращение к самой себе, называется рекурсией (рекурсия - возврат). (Происходит от латинского recurreus - возвращающийся).Рекурсия - это такой способ организации подпрограммы, при котором в ходе выполнения она обращается сама к себе.
Пример: вычисления факториала числа, в которой используется рекурсивная процедура fak:
FUNCTION fak (f)
IF f = 0 OR f = 1 THEN
fak = 1
ELSE
fak = fak(f - 1) * f
END IF
END FUNCTION
REM "Вычисление факториала"
INPUT "Введите число: ", a
PRINT "Факториал = ", fak(a)
END



Опубликовано 20 December 2015