Oʻzbekiston respublikasi oliy va o‘rta maxsus ta’lim vazirligi
Download 72.42 Kb.
|
Struktura mustaqil ta\'lim 2
- Bu sahifa navigatsiya:
- Eyler funksiyasi va uni hisoblash algoritmi Bajardi: “ATT” yo’nalishi 2-kurs 20_21-guruh talabasi Asatov Shaxzod Tekshirdi: TOJIYEV M. R. JIZZAX 2023
- Foydalanilgan adabiyotlar va elektron resurslar.
OʻZBEKISTON RESPUBLIKASI OLIY VA O‘RTA MAXSUS TA’LIM VAZIRLIGIMIRZO ULUG‘BEK NOMIDAGI MILLIY UNIVERSITETININIG JIZZAX FILIALI AMALIY MATEMATIKA FAKULTETI «KOMPYUTER ILMLARI VA DASTURLASHTIRISH» kafedrasi “ALGORITMLAR VA BERILGANLAR STRUKTURASI” FANIDAN MUSTAQIL ISH Mavzu: Eyler funksiyasi va uni hisoblash algoritmi Bajardi: “ATT” yo’nalishi 2-kurs 20_21-guruh talabasi Asatov Shaxzod Tekshirdi: TOJIYEV M. R. JIZZAX 2023 Reja: Nazariya Dastur sifatida ishlatilishi Dasturini yaratish ketma-ketligi Foydalanilgan adabiyotlar va elektron resurslar. Eyler funksiyasini, matematikda davom etuvchi, lekin qisqa orada turevi bo'lmagan funksiya hisoblanadi. Bu funksiya birinchi marta 1875 yilda Paul David Gustav du Bois-Reymond tomonidan aniqlangan va elli yil oldin Ernst Eduard Kummer tomonidan aniqlangan Lipschitz funksiyasidan farq qiladi. Eyler funksiyasi quyidagi ko'rinishda aniqlanadi: begin{equation} f(x) = \sum_{n=0}^{\infty} \frac{\sin((n+\frac{1}{2})\pi x)}{(n+\frac{1}{2})^\alpha} \end{equation} Bu yerda, $\alpha > 0$ bir o'zgaruvchi va $x$ haqiqiy son bo'ladi. Funksiya, $x \in [0,1]$ kesmida aniqlanadi. $\alpha = 1$ uchun funksiyaga ma'lum bir nomi mavjud va bu, Riemann-Lebesgue lemmasiga bog'liq muhim ahamiyatga ega. Eyler funksiyasi, doimiy bo'lgan va matematik fizikada va qo'shma fanlarda ko'p muammolarni hal qilishda qo'llaniladi. Eyler funksiyasini hisoblash uchun, bir dastlab funksiyani bir nechta terimlardan iborat yaxlitlash kerak. Quyidagi formula yordamida Eyler funksiyasini $N$ ta terimdan iborat yaxlitlash mumkin: \begin{equation}
Burada, $\alpha > 0$ bir sabit va $x$ haqiqiy son. Bu yaxlitlashni amalga oshirish uchun, N ga mos kelgan qiymatni tanlang. N nechanchi bo'lsa, yaxlitlash natijasi boshqa bo'ladi. Ammo ko'pgina muammolar uchun, $N = 100$ yoki undan yuqori qiymatlari olish tavsiya etiladi. Eyler funksiyasining hisoblanishi murakkabdir, chunki bu funksiya doimiy bo'ladi va necha terim kiritilganligiga bog'liq ravishda tez-tez taxminiy hisoblanishi kerak bo'ladi. Bundan tashqari, Eyler funksiyasining yaxlitlanishi, funksiyani yaxlitlash uchun o'zaro qo'shimcha usullar kiritilishi mumkin. Eyler funksiyasini hisoblash uchun bir necha algoritma mavjud. Ularning o'zaro farqi, yaxlitlash uchun qo'llaniladigan terimlar soni va ishlatilgan yaxlitlash formulalarining turidir. Shu sababli, sizga quyidagi asosiy hisoblash algoritmini taqdim qilaman: $N$ ni belgilang (yaxlitlash uchun kerakli terimlar soni).
Yaxlitlash formulasi orqali $f_N(x)$ qiymatini hisoblang. Natijani chop eting. C# da Eyler funksiyasini hisoblash uchun quyidagi algoritmni kiritishingiz mumkin: public static double Euler(double x, int N, double alpha) { double result = 0.0; for (int n = 0; n <= N; n++) { double numerator = Math.Sin((n + 0.5) * Math.PI * x); double denominator = Math.Pow(n + 0.5, alpha); result += numerator / denominator; } return result; } Bu funksiya, x haqiqiy soni, N terim soni va alpha ko'rsatkichini qabul qiladi va Eyler funksiyasining yaxlitlangan qiymatini qaytaradi. Math.Sin va Math.Pow metodi C# matematik kutubxonasi orqali keltirilgan. Shunday qilib, funksiyani ishga tushirishdan oldin, using System; qo'shimcha ustunni foydalanuvchining kodiga qo'shing. using System; using System.Windows.Forms; namespace EulerFunction { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private double Euler(double x, int N, double alpha) { double result = 0.0; for (int n = 0; n <= N; n++) { double numerator = Math.Sin((n + 0.5) * Math.PI * x); double denominator = Math.Pow(n + 0.5, alpha); result += numerator / denominator; } return result; } private void btnCalculate_Click(object sender, EventArgs e) { // Input validation if (!double.TryParse(txtX.Text, out double x)) { MessageBox.Show("Invalid value for x"); return; } if (!int.TryParse(txtN.Text, out int N)) { MessageBox.Show("Invalid value for N"); return; } if (!double.TryParse(txtAlpha.Text, out double alpha)) { MessageBox.Show("Invalid value for alpha"); return; } double result = Euler(x, N, alpha); // Display result txtResult.Text = result.ToString(); } } } Bu kodlar, "x", "N" va "alpha" qiymatlari kiritilganida, Eyler funksiyasini hisoblaydi va funksiyani chiqaradi. Tugmani bosilganda, dastur foydalanuvchining kiritgan qiymatlarni tekshiradi va yaroqlilik bo'yicha xatolik xabarini ko'rsatadi. Qiymatlar to'g'ri kiritilganida, dastur funksiyani hisoblaydi va natijani "txtResult" tekst maydonchasi orqali chiqaradi.\ Foydalingan Adabiyotlar: http://mathworld.wolfram.com/ https://dlmf.nist.gov/ Download 72.42 Kb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling