1-rasm.
dekart koordinatalar sistemasida oraliqda funktsiya grafigini chizaylik. Funktsiya grafigidagi va nuqtalarni olib va bu nuqtalarni tutashtirib to'g'ri chiziq hosil qilamiz.
Ushbu oraliqning OX o'qi bilan kesishish nuqtasi (3.1) tenglamaning ildiziga keyingi yaqinlashishi sifatida qarash mumkin. Funksiya grafigida nuqtani belgilaymiz. OX o'qi bilan kesmasini o`tkazib, kesishish nuqtasini nuqta bilan belgilaymiz. Ushbu jarayonni davom ettirsak, asta-sekin kerakli ildizga yaqin bo`ladigan - nuqtalar ketma-ketligini olamiz. Bu nuqtalar ketma ketligidan funktsiya grafigining OX o'qi bilan kesishish nuqntasidagi ildiziga intiladi.
Rasmdan ko'rinib turibdiki, bu holda nuqta qo`zg`almas bo'lib va nuqta boshlang`ich bo`lib, ketma-ket yaqinlashtirib borildi. Ushbu usulda algoritmning aniq bir nuqtasini oldindan belgilash kerak bo'ladi. Agar oraliqlar bo'yicha shartlar bajarilsa B nuqta qo`zg`almas bo`lishini, agar bo`lsa A nuqta qo`zg`almas bo`lishini osonlikcha tekshirish mumkin.
Ushbu usul dasturini tuzishdan oldin tekshirish mumkin, ammo hamma joyda, bunday masalalarni hal qilishda ushbu ifodaning ishorasi butun oraliq davomida saqlanib qoladi va ishorani oraliqning istalgan nuqtasida tekshirib, dasturlash orqali tanlovni amalga oshirish kifoya. Yuqoridagi tushunchalardan so'ng vatarlar usuli algoritmini loyihalashtirishga kirishishimiz mumkin. Shuning uchun biz algoritmni ma'lum bir algoritmik tilga bog'lamasdan blok-sxema ravishda tasvirlaymiz:
Kirish
Agar va bo`lsa u xolda ga o`ting, aks xolda bo`lsa ga o`ting.
Agar va bo`lsa u xolda ga o`ting, aks xolda ga o`ting.
Agar va bo`lsa u xolda ga o`ting, aks xolda ga o`ting
Chiqish
Tenglamalarning yechimlarni topishning bu usulni iteratsiyalash usuli deb ataladi. Kerakli aniqlikka erishish uchun qancha takrorlanish qo'llashni oldindan bilmaymiz. Agar kerak bo'lsa, dastur matniga takrorlash sonini hisoblaydigan hisoblagichni kiritishimiz mumkin. Intuitiv va vizual ravishda, 1-rasmga ko'ra, biz ushbu usul oraliqlarni ikkiga bo'lish usulidan ancha samarali ekanligini tushunamiz.
Endi algebraik tenglamalarni yechishning yana bir usuli - Nyuton usulini ko'rib chiqamiz. Nyuton usuli ketma-ket yaqinlashish usuli bo`lib uning g'oyasi 2-rasmda keltirilgan.
2-rasm.
Nyuton usulida funktsiya oraliqda uzluksiz va hosilasi mavjud bo`lshi talab etiladi, yna shu oraliqda bo`lsin. Bu shartlarni qanoatlantiruvchi oraliqda tenglamaning qo`yilashidan u yagona yechimga ega bo`lishi kelib chiqadi.
Bu usulning g'oyasi: biz nuqtani tanlaymiz. Bu nuqtani boshlang'ich yaqinlashish nuqtasi sifatida qabul qilib, Shu nuqtada funktsiya grafigiga urinma chizamiz. Ushbu urinmaning OX o'qi bilan kesishish nuqtasi boshlang`ich yaqinlashish sifatida qabul qilamiz, xuddi shu tarzda, nuqtadan chizilgan urinmani OX o'qi bilan kesishish nuqtasi belgilanadi.
Keyingi hisoblashlar ham shunga o'xshash tarzda topilgan. Bu jarayon shart bajarilmaguncha davom etadi. Bu jarayonning yaqinlashuvchilini 2-rasmdan ko'rish mumkin. Nazariy jihatdan yaqinlashish tezligi yetarlicha yuqori ekanligini isbotlash mumkin. Bu amaliy misollar bilan tasdiqlangan. Nyuton usulining yana bir afzalligi shundaki, Nyuton usulida agar qandaydir xato qilsak, ya'ni qaysidir qadamda xato qilsak, usul bizni to'g'ri yo'lga boshlaydi.
Endi algoritmning matematik tavsifiga va hisoblash tartibiga o'tamiz. Urinmaning nuqtadagi funktsiya grafigiga o`tkazilgan urinma tenglamasi quyidagicha bo`ladi:
Urinmaning OX o'qi bilan kesishish nuqtasi: Shuning uchun qiymati uchun quyidagi formula olinadi
(3.3)
(3.3) formula keyingi yaqinlashishga o'tish uchun qaytariluvchi (рекуррент) bo`ladi. Keyingi taqribiy qiymati topish uchun har bir qadamda faqat oldingi taqribiy qiymatdan foydalanilganligi sababli, algoritmni shakllantirishda biz ushbu hisoblarni qabul qilib, algoritm matnini soddalashtirishimiz mumkin. Shunday qilib, Nyuton usulining algoritmini quyidagicha ifodalashimiz mumkin.
Kiritish
Agar bo`lsa u xolda o`ting
Chiqish
Eslatma: dasturlashda va funktsiyalarni ko`rinishini funktsiyalarni berilish qismga qoyish mumkin.
Shunday qilib, biz har qanday algebraik tenglamalarni tatbiq etiladigan universal dasturni ko`ramiz.
Xulosa qilib aytganda, Nyuton usulining imkoniyatlarini va uning samaradorligini ko'rsatish uchun bitta misol keltiramiz.
Misol. ni qiymatini 0,001 aniqlik bilan hisoblash talab etilsin. Shubhasiz, arifmetik amallarning aniq, cheklangan ketma-ketligi yo'q, ba`zi hisob kitoblardan so`ng biz taqribiy qiymatni olishimiz mumkin. Keling, ushbu ifodani tenglama ko`rinishida yozib olamiz:
uning ildizlaridan biri oraliqda joylashgan bo'lib, bu tenglavani ko`rinishda yozib, tenglamaga Nyuton usulini qo'llasak, bu holda (3.3) formula quyidagicha bo'ladi:
yoki
ushbu formuladan foydalanib qiymatini qo`yib hisob-kitoblarni amalga oshirsak, quyidagilarga ega bo`lamiz:
Agar bu natijaning qiymatini qiymat bilan taqqoslasak, farqi 0,000003 aniqiikda ekanligini ko'ramiz. Faqat uch qadamda bunday katta aniqlikka erishildi.
Xuddi shunday algoritmni har qanday darajadagi ildizlarni hisoblash uchun tuzilish mumkin. Masalan, topish uchun biz quyidagi tenglamani yechamiz:
Va bu xolda Nyuton usuli bo'yicha hisoblash formulalari quyidagicha bo'ladi:
Quyidagi misollarini 0,0001 aniqlikda taqribiy yeching: .
Do'stlaringiz bilan baham: |