Рекуррентный способ задания функции

Функция. Способы задания функций.

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

1. Табличный способ наиболее широко распространен (таблицы логарифмов, квадратных корней), основное его достоинство – возможность получения числового значения функции, недостатки заключаются в том, что таблица может быть трудно читаема и иногда не содержит промежуточных значений аргумента.

Аргумент х принимает заданные в таблице значения, а у определяется соответственно этому аргументу х.

2. Графический способ заключается в проведении линии (графика), у которой абсциссы изображают значения аргумента, а ординаты – соответствующие значения функции. Часто для наглядности масштабы на осях принимают разными.

Например: для нахождения по графику у, которому соответствует х = 2,5 необходимо провести перпендикуляр к оси х на отметке 2,5. Отметку можно довольно точно сделать с помощью линейки. Тогда найдем, что при х = 2,5 у равно 7,5, однако если нам необходимо найти значение у при х равном 2,76, то графический способ задания функции не будет достаточно точным, т.к. линейка не дает возможности для столь точного замера.

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

3. Аналитический способ состоит в задании функции одной или несколькими формулами. Основным достоинством этого способа является высокая точность определения функции от интересующего аргумента, а недостатком является затрата времени на проведение дополнительных математических операций.

Функцию можно задать с помощью математической формулы y=x 2 , тогда если х равно 2, то у равно 4, возводим х в квадрат.

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

Словесно можно задать функцию (задачу), принимающуюся в виде натурального аргумента х с соответствующим значением суммы цифр, из которых состоит значение у. Поясняем: если х равно 4, то у равно 4, а если х равно 358, то у равен сумме 3 + 5 + 8, т. е 16. Далее аналогично.

5. Рекурсивный способ состоит в задании функции через саму себя, при этом значения функции определяются через другие ее же значения. Такой способ задания функции используется в задании множеств и рядов.

При разложении числа Эйлера задается функцией:

Ее сокращение приведено ниже:

При прямом расчёте возникает бесконечная рекурсия, но можно доказать, что значение f(n) при возрастании n стремится к единице (поэтому, несмотря на бесконечность ряда, значение числа Эйлера конечно). Для приближённого вычисления значения e достаточно искусственно ограничить глубину рекурсии некоторым наперёд заданным числом и по достижении его использовать вместо f(n) единицу.

Читайте также:  Дуньки грибы способ приготовления

Источник

Конспект урока «Рекуррентное задание числовых последовательностей» (9 класс)

Выбранный для просмотра документ Открытый урок Рекуррентное задание числовой последовательности.docx

ТЕМА: Рекуррентное задание числовых последовательностей

Цель урока : познакомить учащихся с рекуррентным способом задания числовой последовательности на примере чисел Фибоначчи и разобрать задачи на преобразование одного задания последовательности в другое.

Воспитательная : продолжить формировать алгоритмическую культуру мышления учащихся на основе дискретного понимания функции.

Развивающая : продолжить развитие навыков и умений работы с формулами задания функции.

Обучающая : научить отличать аналитический способ задания функции от рекуррентного, переводить одно задание функции в другое.

Учебник, компьютер (проектор).

Учащиеся получат представление рекуррентных соотношениях.

Узнают о способе перехода от аналитического задания к рекуррентному.

Научатся использовать рекуррентные формулы для вычисления значений последовательности.

Проверка домашнего задания.

Актуализация темы «Способы задания функции»

Изучение нового материала (работа с презентацией).

Определение рекуррентного соотношения.

Различия аналитического и рекуррентного способа задания.

Определение последовательности Фибоначчи

Онтологическая интерпретация чисел Фибоначчи.

Свойства последовательности Фибоначчи.

Решение заданий из учебника

Приветствие, проверка присутствующих. Объявление темы урока, объяснение хода урока.

2. Проверка домашнего задания: № 16.6, 15.41.

3. Актуализация темы «Способы задания функции»

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

4. Изложение нового материала.

1. Определение рекуррентного соотношения

Опр. ( презентация ) Говорят, что последовательность задана рекуррентным соотношением, если указана формула, в одной части которой находится только n — ый член последовательности, а в другой — буквенное выражение, содержащее предыдущие члены последовательности, в котором аргумент не участвует в вычислениях значения функции.

2. Различия аналитического и рекуррентного способа задания .

Различие состоит в том, что при аналитическом способе вычисления n — го члена в буквенном выражении имеется аргумент, с помощью которого можно сразу получить результат, не зная при этом значений остальных членов последовательности. При рекуррентном способе вычисления n — го члена обязательно надо знать значения предыдущих членов, начиная с первого. При этом в формуле рекуррентного соотношения аргумент присутствует только как индекс нумерации и в вычислениях не используется. Образно говоря, функция натурального аргумента задана зависимостью от начального и получаемого значения той же функции как в «принципе домино».

3. Определение последовательности Фибоначчи

Опр. ( презентация ) Последовательностью Фибоначчи называется числовая последовательность, у которой заданы изначально первый и второй члены, а n — ый член вычисляется как сумма ( n —1)- го и ( n —2)- го членов.

4. Онтологическая интерпретация чисел Фибоначчи.

На Западе впервые эта последовательность была исследована Леонардо Пизанским, известным как Фибоначчи, в его труде «Liber Abaci» (1202). Он рассматривает развитие идеализированной (биологически нереальной) популяции кроликов, предполагая что: изначально есть новорожденная пара кроликов (самец и самка), со второго месяца после своего рождения кролики начинают спариваться и каждый месяц производить новую пару кроликов, кролики никогда не умирают. Сколько пар кроликов будет через год? ( презентация )

Читайте также:  Минеральная маска пилинг двойное сияние vichy способ применения

В начале первого месяца есть только одна новорожденная пара (1).

В конце первого месяца по-прежнему только одна пара кроликов, но уже спарившаяся (1)

В конце второго месяца первая пара рождает новую пару и опять спаривается (2)

В конце третьего месяца первая пара рождает еще одну новую пару и спаривается, вторая пара только спаривается (3)

В конце четвертого месяца первая пара рождает еще одну новую пару и спаривается, вторая пара рождает новую пару и спаривается, третья пара только спаривается (5)

5. Свойства последовательности Фибоначчи .

Если числа Фибоначчи заданы следующим образом:

тогда справедливы следующие свойства ( презентация ):

5. Решение заданий из учебника

Решение учителем № 15.37, 15.31, 15.20 (а, б), 15.32, 15.21.

Решение учащимися № 15.37, 15.31, 15.20, 15.32, 15.21 (а, б).

Заключительный опрос по изученному материалу:

1) Приведите примеры рекуррентного соотношения

2) Приведите пример последовательности Фибоначчи

3) Запишите рекуррентно арифметическую прогрессию

Источник

Рекуррентный способ задания функции

а) Терминологическое введение

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

Под индукцией понимается метод доказательства утверждений, который строится на базе индукции при n=0,1, затем утверждение полагается правильным при n=n b и проводится доказательство для n+1.

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

Термин рекуррентные соотношения связан с американским научным стилем и определяет математическое задание функции с помощью рекурсии.

Основной задачей исследования рекурсивно заданных функций является получение f(n) в явной или как еще говорят «замкнутой» форме, т.е. в виде аналитически заданной функции. В связи с этим рассмотрим ряд примеров:

б) Примеры рекурсивного задания функций

1. f(0)=0
f(n)= f(n-1)+1
2. f(0)=1
f(n)= n*f(n-1)

Последовательная подстановка дает – f(n)=1*2*3*…*n = n!

Для полноты сведений приведем формулу Стирлинга для приближенного вычисления факториала для больших n:

3. f(0)=1
f(1)=1
f(n)= f(n-1)+ f(n-2), n>=2

Эта рекурсивная функция определяет числа Фибоначчи: 1 1 2 3 5 8 13, которые достаточно часто возникают при анализе различных задач, в том числе и при анализе алгоритмов. Отметим, что асимптотически

4. f(0)=1
f(n)= f(n-1)+ f(n-2)+…+1 = f(i)+1

Для получения функции в явном виде рассмотрим ее последовательные значения: f(0)=1, f(1)=2, f(2)=4, f(3)=8, что позволяет предположить, что f(n)= , точное доказательство выполняется по индукции.

5. f(0)=1
f(n)= 2*f(n-1)

Мы имеем дело с примером того, что одна и та же функция может иметь различные рекурсивные определения – f(n)= , как и в примере 4, что проверяется элементарной подстановкой.

6. f(0)=1
f(1)=2
f(n)= f(n-1)*f(n-2)

В этом случае мы можем получить решение в замкнутой форме, сопоставив значениям функции соответствующие степени двойки:

Читайте также:  Судебные способы защиты публичных прав

Обозначив через Fn — n-ое число Фибоначчи, имеем: f(n)= .

Рекурсивная реализация алгоритмов

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

F(n);
If n=0 or n=1 (проверка возможности прямого вычисления)
Then
F Цепочка рекурсивных вызовов

Рис 8.1 Дерево рекурсии при вычислении факториала – F(5)

Дерево рекурсивных вызовов может иметь и более сложную структуру, если на каждом вызове порождается несколько обращений – фрагмент дерева рекурсий для чисел Фибоначчи представлен на рис 8.2:

Рис 8.2 Фрагмент дерева рекурсии при вычислении чисел Фибоначчи – F(5)

Анализ трудоемкости механизма вызова процедуры

Механизм вызова функции или процедуры в языке высокого уровня существенно зависит от архитектуры компьютера и операционной системы. В рамках IBM PC совместимых компьютеров этот механизм реализован через программный стек. Как передаваемые в процедуру или функцию фактические параметры, так и возвращаемые из них значения помещаются в программный стек специальными командами процессора. Дополнительно сохраняются зна-чения необходимых регистров и адрес возврата в вызывающую процедуру. Схематично этот механизм иллюстрирован на рис 8.3:

Рис 8.2 Механизм вызова процедуры с использованием программного стека

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

Обозначив через:
m — количество передаваемых фактических параметров,
k — количество возвращаемых процедурой значений,
r — количество сохраняемых в стеке регистров,
имеем:

fвызова = m+k+r+1+m+k+r+1 = 2*(m+k+r+1) элементарных операций на один вызов и возврат.

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

Анализ трудоемкости алгоритма вычисления факториала

Для рассмотренного выше рекурсивного алгоритма вычисления факториала количество вершин рекурсивного дерева равно, очевидно, n, при этом передается и возвращается по одному значению (m=1, k=1), в предположении о сохранении четырех регистров – r=4, а на последнем рекурсивном вызове значение функции вычисляется непосредственно – в итоге:

Отметим, что n – параметр алгоритма, а не количество слов на входе.

Источник

Оцените статью
Разные способы