1-amaliy ishi. Mavzu: Massiv elementlarini tartiblashtirish. Matrisa maksimal, minimal elementini aniqlash algoritmi. Matrisalarni ko’paytirish dasturi. Amallar tartibini baholash 7-variant
Download 1.8 Mb.
|
algoritmlar1-amaliy
- Bu sahifa navigatsiya:
- 4-amaliy ishi.
3-amaliy ishi
Mavzu: Taqribiy integrallash usullari. Zaruriy aniqlikni ta’minlovchi qadamini tanlash 7-variant. Berilgan topshiriq: 1)to‘rtburchak usulida; 2)trapetsiya usulida; 1)to‘rtburchak usulida; Funksiya qiymatini to‘rtburchak usuli yordamida hisoblash uchun, yaqinlashtirishlar qo‘shilgan Newton-Raphson metodidan foydalanamiz. Ushbu metod to‘rtburchak funksiyalar yechishda o‘ziga o‘xshash yechim topish algoritmidir. Quyidagi ko‘d funksiya qiymatini aniqlaydi: #include #include using namespace std; double f(double x) { return pow(x, 3) + 0.2 * pow(x, 2) + 0.5 * x - 1.2; } double df(double x) { return 3 * pow(x, 2) + 0.4 * x + 0.5; } double tortburchak(double a, double b, double epsilon) { double c = (a + b) / 2; double delta = epsilon / 2; while (fabs(b - a) > epsilon) { c = c - f(c) / df(c); if (f(a) * f(c) < 0) { b = c; } else { a = c; } delta = epsilon / (b - a); } return c; } int main() { double a = -2, b = 2, epsilon = 0.001; double x = tortburchak(a, b, epsilon); cout << "The root is approximately: " << x << endl; return 0; } Bu dastur funksiyani o'zgaruvchilarni ishlatib yechish uchun yaratadi. Funksiyalar `f(x)` va `df(x)` teskari chiqarish funksiyalari hisoblash uchun yaratilgan. `tortburchak()` funksiyasi to‘rtburchak usuli yordamida yechim topishga yordam beradi. `a` va `b` - funksiyaning yechimini topish uchun hisoblanadigan interval, `epsilon` esa yechimning aniqlik darajasi. Bu qiymatlar o'zgaruvchilarga o'rnatilgan. Natija konsolga chiqariladi. Misol uchun, yuqoridagi funksiyani dasturida quyidagi chiqarish ko‘rsatiladi: Natija ko'rsatilgan joyga ko'ra formatlab turilgan. Yechimning aniqlik darajasi `epsilon` ga mos keladi. 2)trapetsiya usulida; Integralni trapetsiya usuli bilan hisoblash uchun quyidagi algoritma ishlatiladi: 1. Intervalni n ta'lim bo'lgan kismlarga bo'ling. 2. Har bir kismi trapetsiya shaklida hisoblang. 3. Trapetsiyalar yig'indisini hisoblang. Quyidagi C++ dasturi 2 ta nuqtada qiymat olish uchun trapetsiya usulini ishlatadi. Dasturda foydalanuvchi `a` va `b` ni kiritsa bo'ladi, shuningdek, talab etilgan aniqlik darajasi `dx` ni ham kirita oladi. Dastur natijani konsolga chiqaradi: #include #include using namespace std; double f(double x) { return pow(x, 3) + 0.2 * pow(x, 2) + 0.5 * x - 1.2; } double trapetsiya (double a, double b, int n) { double h = (b - a) / n; double sum = 0.5 * (f(a) + f(b)); for (int i = 1; i < n; i++) { double x = a + i * h; sum += f(x); } return h * sum; } int main() { double a = 0, b = 9, dx = 0.001; double sum = 0.0; int n = (b - a) / dx; for (int i = 0; i < n; i++) { double x1 = a + i * dx; double x2 = a + (i + 1) * dx; sum += trapetsiya (x1, x2, 3); } cout << "qiymat: " << sum << endl; return 0; } Dastur funksiyani hisoblash uchun `f(x)` funksiyasi yaratilgan. `trapezoid()` funksiyasi intervalni trapetsiya usuli yordamida yechish uchun yaratilgan. Ushbu funksiyada `a` va `b` ko'rsatkichlarini, `n` esa intervalni necha ta'limga bo'lishini ifodalaydi. Ushbu funksiyada, trapetsiya usulini yordamida, hisoblanadigan qiymat `sum` deb nomlanadi va qiymat hisoblanadigan tsikl ichida hisoblanadi. Asosiy funksiyada `dx` qiymati aniqlik darajasini ifodalaydi. `sum` ning qiymati konsolga chiqariladi. Misol uchun, yuqoridagi funksiyani dasturida quyidagi chiqarish ko‘rsatiladi: Natija ko'rsatilgan joyga ko'ra formatlab turilgan. `dx` qiymati katta bo'lsa, hisoblanadigan integralning aniqligi yuqori bo'ladi. 4-amaliy ishi. Mavzu: Chiziqli dasturlash masalasi yechimi asosida xulosa va iqtisodiy tavsiyalar ishlab chiqish. Matematik model asosida iqtisodiy masala tuzishga namunalar Berilgan topshiriq: 7-variant. Download 1.8 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling