Кўпҳад қийматини Горнер схемаси билан ҳисоблаш. Алгоритмлар. Тақрибий ҳисоблашларда итерацион цикллардан фойдаланиш (қаторларни йиғиндисини ҳисоблаш). Алгоритмлар
Кўпҳадлар берилиши. Итерацион ҳисоблаш жараёни.
Кўпҳадларни ҳисоблашни Горнер схемаси.
Горнер схемасини алгоритми ва дастур коди
Кўпҳад қийматини Горнер схемаси билан ҳисоблаш.
n – даражали кўпҳад берилган бўлсин
Р(х) = a0Xn + a1Xn-1 + . . . + an-1X +an (1)
кўпҳаднинг aк коэффициентлари хақиқий бўлсин (к= 0,1,2, ,,, n). Масала қўйилиши қуйидагдан иборатдир: Х = ξ нуқтада кўпҳад қийматини топиш керак. Яъни :
Р(ξ) = a0ξ n + a1ξ n-1 + . . . + an-1 ξ +an (2)
Р(ξ) сонини топиш жараёнини қуйидагича келтирамиз, (2) – формулани қуйидаги ҳолатга келтирамиз:
Р(ξ) = (,,,(((a0ξ + a1)ξ +a2 ) ξ +a3) ξ + . . . + an-1 )ξ +an)
Бу тенгликдан кетма кет ҳисоблаб :
b0 = a0
b1 = a1 + b0 ξ
b2 = a2 + b1 ξ
b3 = a3 + b2 ξ (3)
b4 = a4 + b3 ξ
…………….
bn = an + bn-1 ξ
bn = Р(ξ) ларни топамиз.
b0 = a0 , b1, …bn-1 сонлар , Р(х) кўпҳадни х - ξ бир ҳадга бўлиш натижасида ҳосил бўлган бўлинма Q(x) кўпҳаднинг коэффициентлари эканлигини кўрсатамиз. Фараз қиламизки
Q(x) = β0 xn-1 + β1xn-2 + … + βn-1 (4)
ва
Р(х) = Q(x)(х- ξ) + βn (5)
Безу теоремаси асосида бўлиш натижасида хосид бўладиган қолдиқ
βn = Р(ξ) тенг бўлади. (4) ва (5) – формулалардан қуйидагиларни ҳосил қиламиз:
Р(х) = (β0 xn-1 + β1xn-2 + … + βn-1) (x- ξ) + βn
ёки қавсларни очиб ўхшаш ҳадларни келтириб қуйидаги ҳолатга келтирамиз:
Р(х) = (β0 xn + (β1 - β0 ξ) x n-1 +( β2 - β1 ξ) xn-2 + … +( βn-1 - βn-2 ξ) x +( βn - βn-1 ξ)
тенгликни ўнг ва чап томонларидаги х ўзгарувчини бир хил даражалари олдидаги коэффициентларини солиштириб ҳосил қиламиз:
β0 = a0
β1 - β0 ξ = a1
β2 - β1 ξ = a2
....................
βn-1 - βn-2 ξ = an-1
βn - βn-1 ξ = an
бундан
β0 = a0 = b0
β1 = a1 + β0 ξ = b1
β2 = a2 + β1 ξ = b2
………………….
βn-1 = an-1 + βn-2 ξ = bn-1
βn = an + βn-1 ξ = bn
шу билан юқорида қабул қилган тахминимиз исботини топди.
Шундай қилиб (3) – формулалар ёрдамида бўлиш амалини бажармасдан,
Q(x) бўлинма коэффициентларини ва қолдиқ Р(ξ) ни топиш мумкин.Ушбу ҳисобларни Горнер схемаси деб аталадиган схема бўйича бажариладилар:
a0, a1, a2, … an
+ ∟ ξ
b0 ξ b1 ξ … bn-1 ξ
__________________
b0 b1 b2 … bn = P(ξ)
Мисол . P(X) = 3x3+ 2x2 -5x +7 кўпҳад қийматини х=3 да ҳисобланг:
3 2 -5 7
+ ∟ 3
9 33 84
_____________________
3 11 28 91= P(3)
Горнер схемаси бўйича ҳисоблаш алгоритмини ва Pascal дастурлаш тилида тузилган дастур кодини келтирамиз:
a(0), … , a(n) коэфициентларга эга n – даражали кўпҳад берилган бўлсин. Бу кўпҳадни Горнер схемасига биноан берилган нуқтада ҳисоблаш қуйидагича бажарилади. Кўпҳадни Р десак, унда Р кўпҳад Горнер схемаси бўйича S=(…((а(0)*х+а(1))*х+а(2))*х+…)*х+а(n) кўринишга келтирилиди. Демак ҳисоблаш жараёни P:=a(i) ни керакли маротаба Х га кўпайтиришдан ва a(i) ни қўшишдан иборат бўлади.
Горнер схемаси бўйича кўпҳад қийматини ҳисоблаш учун Pascal дастурлаш тилида тузилган дастур кодини келтирамиз:
Бунда n кўпҳад ўзгарувчиларининг даражаси, a[i] – коэффициентлари.
Program Gor; Const n=10;
Do'stlaringiz bilan baham: |