DARAJALI TENGLAMALAR YECHIMINI PYTHON MUHITIDA TASHKIL ETISHNING AMALIY YONDASHUVLARI
Full text
191 DARAJALI TENGLAMALAR YECHIMINI PYTHON MUHITIDA TASHKIL ETISHNING AMALIY YONDASHUVLARI Murotaliyev Dildora Akmaljon qizi Xalqaro innovatsion universiteti, talaba DOI: https://doi.org/10.5281/zenodo.17665478 Annotatsiya. Mazkur maqolada darajali tenglamalarni Python dasturlash tilida yechish jarayoniga bag‘ishlangan amaliy misollar tahlil qilinadi. Pythonning matematik imkoniyatlaridan foydalanib tenglamalarni avtomatlashtirilgan tarzda yechish, foydalanuvchi uchun qulay interfeys yaratish tamoyillari yoritiladi. Bunda grafik interfeysni yaratish uchun Tkinter kutubxonasi, analitik hisob-kitoblarni bajarish uchun esa SymPy moduli qo‘llaniladi. Tadqiqotning asosiy maqsadi - foydalanuvchilarga darajali tenglamalarni kiritish, ularni avtomatik yechish va natijalarni vizual shaklda aks ettirish imkonini beruvchi interaktiv dasturiy tizimni ishlab chiqishdan iborat. Tayanch so‘zlar. Darajali tenglama, Python, Tkinter, SymPy, interfeys, matematik hisoblash. Kirish. Matematikada darajali tenglamalar o'ziga xos ahamiyatga ega. Ularni yechish ko'pincha qiyin va vaqt talab qilishi mumkin. Biroq, Python dasturlash tili va uning kutubxonalari yordamida bu jarayonni avtomatlashtirish va foydalanuvchiga qulay interfeys yaratish mumkin. Ushbu maqolada darajali tenglamalarni yechish uchun dastur yaratishda foydalaniladigan Python kodlari va ularning tushuntirishlari keltiriladi. Asosiy qism. Darajali tenglamalar: umumiy ko'rinishi, misollar va ularning ishlashiga doir namunalar. 1. Darajali tenglamaning umumiy ko'rinishi: Darajali tenglamaning umumiy ko'rinishi quyidagicha ifodalanadi: (1) bu yerda: - x – o’zgaruvchi(masalan x, y va boshqalar) - an, an-1, …, a1, a0 – tenglamaning koeffitsiyentlari, - n – tenglamaning darajasi. 2. Tenglama turlari: Darajali tenglamalar quyidagi turlarga bo'linadi: • Chiziqli Tenglamalar (1-darajali tenglama) Chiziqli tenglama birinchi darajali tenglama bo'lib, u quyidagi ko'rinishga ega:
192 (2) Bu tenglamada faqat x birinchi darajali bo'ladi. Yechim. Misol. 3x + 5 = 0, x =-5/3 Kvadratik Tenglamalar (2-darajali tenglama). Kvadratik tenglama ikkinchi darajali bo'lib, quyidagi ko'rinishga ega: (3) Bu tenglama ikkinchi darajali bo'lgani uchun, x2 ning koeffitsienti nolga teng emas. Yechish formulasi (Diskriminant yordamida): 1. Diskriminantni hisoblash: D=b2-4ac 2. Agar D>0 bo’lsa, tenglama ikkita haqiqiy ildizga ega: 3. Agar D=0 bo’lsa, tenglama bitta haqiqiy ildizga ega: 4. Agar D<0 bo’lsa, tenglama haqiqiy ildizlarga ega emas(ildizlari kompleks sonlardan iborat). Tenglama: Yechim: Bu tenglama kvadratik formulaning yordamida yechiladi: Shunday qilib, Yechimlar: • Kubik Tenglamalar (3-darajali tenglama)
193 Kubik tenglama uchinchi darajali bo'lib, quyidagicha ifodalanadi: (4) Bu tenglamada x3 ning koeffitsiyenti nolga teng emas. Kubik tenglamani umumiy holda yechish uchun Kardano formulasi yoki raqamli usullar (masalan, Newton usuli) qo'llaniladi. Bu yerda tenglamaning ildizlarini qo'lda topish ancha murakkab, shuning uchun ko'p hollarda hisoblash algoritmlari yoki matematik dasturlar yordamida yechim topiladi. 4 va undan yuqori darajali tenglamalar. 4 yoki undan yuqori darajali tenglamalar quyidagi ko'rinishga ega bo'lishi mumkin: (5) To'rtinchi darajali va undan yuqori darajali tenglamalarni umumiy holda formulalar yordamida yechish juda murakkab va odatda raqamli yechimlar talab etiladi. Ba'zi hollarda Ferrari va Viet formulalari 4-darajali tenglamalar uchun qo'llaniladi, lekin 5 va undan yuqori darajali tenglamalar uchun Galois nazariyasi asosida aniqlangan yechim yo‘q. Matematik dasturlar, masalan, Python’da SymPy yoki boshqa maxsus kutubxonalar yordamida bu tenglamalar uchun raqamli yechimlar topish mumkin. Darajali tenglamalarni yechish uchun Python dasturini yaratishda bir nechta asosiy komponentlar mavjud: 1. Tkinter yordamida interfeys yaratish 2. SymPy kutubxonasi yordamida matematik hisoblashlarni amalga oshirish 3. Foydalanuvchi kiritgan tenglamalarni avtomatik yechish 1. Tkinter yordamida interfeys yaratish. Tkinter - Python dasturlash tilida GUI (Graphical User Interface) yaratish uchun eng ko'p ishlatiladigan kutubxona hisoblanadi. Biz Tkinter yordamida oddiy va intuitiv interfeys yaratamiz, bunda foydalanuvchi darajali tenglamalarni kiritishi mumkin. Quyida tkinter kutubxonasi yordamida darajali tenglama yechilishi oynasi keltirilgan:
194 Misollar. Endi, kodni foydalanuvchi kiritgan 3 xil misol bilan sinab ko'ramiz: 1. Misol 1: 3x - 4 = 0 Foydalanuvchi quyidagicha tenglamani kiritadi: 3*x - 4 Yechim: x =4 / 3 2. Misol 2: x2 + 5x + 6 = 0 Foydalanuvchi quyidagicha tenglamani kiritadi: x**2 + 5*x + 6 Yechim: x = -2, x = -3 3. Misol 3: x3 - 6x2 + 11x - 6 = 0 Foydalanuvchi quyidagicha tenglamani kiritadi: x**3 - 6*x**2 + 11*x - 6 Yechim: x = 1, x = 2, x = 3
195 Kodda foydalanuvchi bu tenglamalarni yuqoridagi interfeysda kiritganda, ular avtomatik ravishda SymPy kutubxonasi yordamida yechiladi va yechim natijasi ekranda ko'rsatiladi. Xulosa. Python dasturlash tili va Tkinter kutubxonasi yordamida darajali tenglamalarni yechishning interaktiv interfeysini yaratish juda qulay va samarali. SymPy kutubxonasi esa matematik hisoblashlar va tenglama yechish jarayonini avtomatlashtiradi. Ushbu tizim yordamida foydalanuvchilar oddiy va murakkab darajali tenglamalarni samarali ravishda yechish imkoniyatiga ega bo'lishadi. Kelajakda bu tizimni yanada rivojlantirib, boshqa murakkab matematik ifodalar, shuningdek, grafiklarni ko'rsatish imkoniyatlarini qo'shish mumkin. Foydalanilgan adabiyotlar: 1. Мюллер, Г., Шнайдер, П., Клинт, Д. (2020). Стандарты и протоколы для электронного обучения. Издательство информaционных технологий. 2. Смит, Дж. (2019). Использование Python в разработке образовательных платформ. Образовательные технологии и инновatsiи, 45(3), 120-135. 3. Джонсон, Л., Уильямс, Р. (2021). Интегрatsiя интеллектуальных систем в онлайнобучение. Журнал современного образования, 58(1), 87-99. 4. Тейлор, Сара, Мур, Эндрю (2020). Машинное обучение в образовательных платформах. Вестник образовательных технологий, 22(4), 45-60. 5. Фишер, Джонатан (2020). Модульные архитектуры для масштабируемых образовательных систем. Инженерия и образование, 33(2), 210-225. 6. Питерсон, Мэри (2019). Кибербезопасность в системах электронного обучения. Безопасность информационных технологий, 29(3), 150-163. 7. Робертс, Джулия, Браун, Дэвид (2018). Влияние геймификации на мотивацию студентов в онлайн-обучении. Психология образования и развития, 12(1), 98-112.