Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
230105_ЛабораторныйПрактикум_Задания_New.doc
Скачиваний:
14
Добавлен:
07.12.2018
Размер:
5.07 Mб
Скачать

Лабораторная работа №5 ”Организация рекурсивных вычислений”

Основные цели работы

Целью работы является получение навыков организации рекурсивных вычислений

Требования к разрабатываемой программе

В математической формулировке задачи должны быть приведены рекуррентные соотношения для первого и второго заданий.

Во втором задании при выводе результата вывести:

  • расчетное значение функции для итерационного и рекурсивного алгоритмов, а также стандартное значение функции

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

  • сравнить время выполнения алгоритмов, используя стандартную функцию gettime модуля dos.

Варианты индивидуального задания

Вариант 1

1. Вычислить значение функции Х(n) при заданном значении n, используя рекурсию. Знаки перед корнями периодически повторяются группами по три: "-","+","-".

  1. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи.

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

    2. Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos

F(x)

Диапазон аргумента

Arctg(x)

|x|<1

Вариант 2

1. Написать подпрограмму вычисления для заданного значения k.

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

Arcth(x)

|x|<1

Вариант 3

1. Дано натуральное число n. Найти (2n)! и 2n!!. Использовать рекурсивную функцию вычисления факториала.

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

X<1

Вариант 4

1. Даны натуральные числа n,m. Найти наибольший общий делитель НОД(n,m). Использовать рекурсивную функцию вычисления НОД, основанную на соотношении НОД (n,m)=НОД (m,r), где r - остаток от деления n на m

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

Вариант 5

1. Составить рекурсивную подпрограмму расчета чисел Фибоначчи U(n), которые определяются следующим образом:

.

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

Вариант 6

1. Даны неотрицательные целые числа n и m. Составить рекурсивную подпрограмму вычисления

функции Аккермана:

Тестовые примеры:

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

Sin(x)

|x|<µ

Вариант 7

1 Вычислить, используя рекурсию значение функции при заданном n. Знаки перед корнями периодически повторяются группами (по три):"-","+","+".

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

cos(x)

|x|<µ

Вариант 8

1. Описать рекурсивную функцию C(m,n) для вычисления биноминального коэффициента по формуле: для заданных m, n.

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

|x|<µ

Вариант 9

1 Вычислить, используя рекурсию, значение функции

Х(n)= при заданном значении n.

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

|x|<µ

Вариант 10

Вычислить, используя рекурсию значение функции Х(n)= при заданном значении n.

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

Sin2 (x)

x<1

Вариант 11

1. Описать рекурсивную функцию Strannost, определенную на множестве положительных целых чисел следующим образом:

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

cos2 (x)

x<1

Вариант 12

1 Вычислить при заданном n, значение функции , используя рекурсивный алгоритм ее вычисления.

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

ln (1-x)

x<1

Вариант 13

1. Найти все трехзначные числа, представимые в виде сумм факториалов своих цифр. Использовать рекурсивную функцию вычисления n!

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

ln(x)

x>0.5

Вариант 14

1. Числа Фибоначчи определяются следующим образом: . Написать подпрограмму вычисления первого числа Фибоначчи, большего m (m>1), включающую рекурсивную функцию, которая основана на непосредственном использовании соотношения

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

ex (1+x)

|x|<2.4

Вариант 15

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

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

arcth(x)

|x|>1

Вариант 16

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

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

ln(x)

0<x<2

Вариант 17

1. Написать рекурсивную подпрограмму вычисления функции X для заданных a, q, b. Функция задана следующим рекуррентным соотношением:

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

|x|<1

Вариант 18

1. Среди первых n+1 элементов последовательности найти количество тех элементов, которые принадлежат интервалу (с,d). Предполагается, что

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

|x|>1

Вариант 19

1. Задана рекуррентная последовательность и значения c, d, q, r, b. Считать . Вычислить .

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

Sin2 (x)

x<1

Вариант 20

1 Числа Фибоначчи определяются следующим образом: Найти номер первого числа Фибоначчи, которое больше введенного h.

2. Заданы: значение х, точность e. Составить подпрограмму расчета функции F(x) с точностью e, используя рекурсивный и итерационный алгоритмы решения задачи. Определить, какое количество членов ряда необходимо просуммировать для достижения указанной точности (сравнить результат суммирования со значением стандартной функции). Сравнить время выполнения алгоритмов, используя стандартную функцию GetTime модуля Dos.

F(x)

Диапазон аргумента

ln(x)

x>0

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]