dmd, благодарю за комментарий! Нет, это совсем не то. Возможно я неправильно задал вопрос.
Если не задавать
A, то для случая
![$(m,k)=(1,1)$ $(m,k)=(1,1)$](https://dxdy-02.korotkov.co.uk/f/5/e/a/5eae8b4892a6adc7e056729bc1914e6d82.png)
функция вернет следующее для первых нескольких
![$n$ $n$](https://dxdy-02.korotkov.co.uk/f/5/5/a/55a049b8f161ae7cfeb0197d75aff96782.png)
:
Код:
1
(A^2 + 4*A + 1)/(A^2 + 2*A + 1)
(-A^3 + 11*A^2 + 9*A + 1)/(A^3 + 3*A^2 + 3*A + 1)
(2*A^4 - 17*A^3 + 35*A^2 + 15*A + 1)/(A^3 + 3*A^2 + 3*A + 1)
(-2*A^7 + 32*A^6 - 71*A^5 - 63*A^4 + 200*A^3 + 150*A^2 + 25*A + 1)/(A^5 + 5*A^4 + 10*A^3 + 10*A^2 + 5*A + 1)
Теперь
A у нас это
![$\sqrt{k^2-2km}$ $\sqrt{k^2-2km}$](https://dxdy-01.korotkov.co.uk/f/c/0/6/c064816be9d6969f2d47e2106650424982.png)
. Т.к. у нас
![$(m,k)=(1,1)$ $(m,k)=(1,1)$](https://dxdy-02.korotkov.co.uk/f/5/e/a/5eae8b4892a6adc7e056729bc1914e6d82.png)
, будем иметь
A равно
![$\sqrt{-1}$ $\sqrt{-1}$](https://dxdy-03.korotkov.co.uk/f/a/7/5/a753db8bcd2d8599b554045e8852f53c82.png)
. Если теперь его подставить в
A, то полученные выше выражения сокращаются до целых чисел. Если использовать
A=sqrt(k^2-2*k*m) программа выдает
Код:
1
2.000000000000000000000000000 + 0.E-28*I
5.000000000000000000000000000 + 0.E-28*I
16.00000000000000000000000000 + 0.E-27*I
61.00000000000000000000000000 + 0.E-27*I
Т.е. несмотря на то, что все сокращается, почему-то вылазят эти хвосты с
I. Для случая
A=(k^2-2*k*m)^(1/2) уже получше:
Код:
1
2
5
16
61
Но когда мы берем например
![$(m,k)=(1,3)$ $(m,k)=(1,3)$](https://dxdy-03.korotkov.co.uk/f/a/7/e/a7e46e010f819cb99d2572b46603fad282.png)
, прога начинает извлекать корень из
![$\sqrt{3^2-2\cdot3\cdot1}=\sqrt{3}$ $\sqrt{3^2-2\cdot3\cdot1}=\sqrt{3}$](https://dxdy-01.korotkov.co.uk/f/8/2/8/828712bab4da87ab81e07d2d221b000482.png)
и делает это в пределах допустимых тем, за что отвечает
precision:
Код:
1
2.000000000000000000000000000
7.000000000000000000000000000
34.00000000000000000000000000
209.0000000000000000000000000
Мне нужно чтобы прога при расчетах брала
![$\sqrt{3}$ $\sqrt{3}$](https://dxdy-03.korotkov.co.uk/f/e/a/b/eab32316a89e67b119a6611bc1b3bd2182.png)
именно как
![$\sqrt{3}$ $\sqrt{3}$](https://dxdy-03.korotkov.co.uk/f/e/a/b/eab32316a89e67b119a6611bc1b3bd2182.png)
, а не как
1.732050807568877293527446342. В процессе работы с
![$\sqrt{3}$ $\sqrt{3}$](https://dxdy-03.korotkov.co.uk/f/e/a/b/eab32316a89e67b119a6611bc1b3bd2182.png)
получится, что он где-то абсолютно сократится и функция вернет целое число.
Плюс я так и не разобрался с ошибкой
Код:
*** polcoeff: domain error in polcoef: degree > 18