Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Гамма-функция точно определяется по формуле






, х> 0.

Для гамма-функции справедливы соотношения

Г(х+1)=х Г(х); (*)

Г(1) = 1;

Г(0, 5)= ;

Г(n+1)= n!, n= 0, 1, 2,...;

Г(х) Г(-х) = -p /(х sin p x). (**)

Рассчитывают с использованием формулы Стирлинга или на основе аппроксимации.

Для x > -18 с погрешностью порядка 1Е-05 гамма-функция может быть вычислена на основе 20-кратного преобразования следующим образом:

z=21 + x;

применения формулы Стирлинга

.

последовательного уменьшения значения z на единицу до значения х и вычислений соответствующих значений гамма-функции по формуле Г(z) =Г(z+1)/ z.

Преобразование обеспечивает вычисления для отрицательных чисел x и с высокой точностью при их малых значениях.

Пример программной реализации метода:

20 CLS: INPUT " ВВЕДИТЕ x= "; Z: x = Z

30 FOR I = 1 TO 20

40 Z = Z*(x+I): NEXT I

50 B = x + 21

60 G=EXP(B*(LOG(B)-1)+1/12/B)*SQR(2*3.141519/B)/Z

70 PRINT " ЗНАЧЕНИЕ Г(x)=" G

80 END

 

Гамма-функция на основе коррекции формулы Стирлинга определяется по формуле

,

где x > 1.0;

,

где a1= 12; a2= 288; a3= -139/51840; a4= 571/2488320.

При 0< x< 1 значение Г(x) с целью повышения точности находится с использованием формулы (*) Г(x) = Г(x+1)/x.

Если x< 0, то гамма-функция вычисляется на основе формулы (**) как

Г(x) =-p/(z Г(z)sin pz),

где z=abs(x).

Ниже приведен пример программы на основе коррекции формулы Стирлинга:

input " x"; x

if x> 1 then z=x: gosub pp: goto kon

if x> 0 then z=x+1: gosub pp: g3=g3/x: goto kon

if x< =-1 then z=abs(x): gosub pp: goto 10

if x< 0 then z=abs(x)+1: gosub pp: z=z-1: g3=g3/z

10 g3=-3.141592/z/sin(3.141592*z)/g3

goto kon

pp:

hk=1+1/12/z+1/(288*z^2)-139/(51840*z^3)+571/(2488320*z^4)

g3= SQR(2*3.141592/z)*EXP(-z)*z^z*hk

return

kon:

print " Γ (" x")= " g3

end

На основе аппроксимации определение Г(z+1) для значений z от 0 до 1 может производится с использованием степенного полинома

,

где b1= -57719165, b2= 98820589, b3= -89705694, b4= 91820688, b5= -75670408, b6= 48219934, b7= -19352782, b8=3586835.

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

7.Методы сортировки чисел. Сортировка по индексам

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

Наиболее часто используются следующие методы сортировки: по индексам, BUBBLE (" пузырька") и SHELL (Шелла). Наиболее простой из них – первый, наиболее эффективный в общем случае – третий и высокоэффективный для сортировки незначительно измененных ранее сортированных массивов – второй.

Ниже приводятся алгоритмы и программная реализация этих методов. Для данных, заданных в строке 95 программ (22 числа), число сравнений, необходимых для выполнения сортировки чисел, составляет при применении метода по индексам – 231, метода BUBBLE – 169 и метода SHELL – 105.

Алгоритм и программа метода сортировки по индексам приведена на рисунке 2.5.

1

Пуск

 

Ввод M, M – число чисел

A(i),

 

 

 

 

 

 

5 Да

A(i)< = A(k)

 

Нет

B = A(i): A(i)= A(k)

A(k)=B

 

 

Вывод A(i), Рисунок 2.5 –Алгоритм программы метода сортировки по индексам

 

Останов

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.