Mustaqil ish topshiriqlari Nazariy savollar: Quyidagi nazariy savollarga javob bering
Download 87.25 Kb.
|
2-hafta Tursunboyev Diyorbek
- Bu sahifa navigatsiya:
- Savol
- Algoritmlarni asimptotik (O()) baholash
- Quyidagi masalalar uchun algoritm tuzing va uni tahlil qiling. Dastur kodini yozib natija oling. 1-masala.
- Dastur natijasi
111-19-guruh talabasi Tursunboyev Diyorbek Algoritmlarni loyihalash fandan 2-hafta Mustaqil ishi Mustaqil ish topshiriqlari Nazariy savollar: Quyidagi nazariy savollarga javob bering Algoritmlarni baholash kriteriyalari haqida ma’lumot bering Integrallarni taqribiy hisoblash algoritmlari haqida ma’lumot bering Savol: Algoritmlarni baholash kriteriyalari haqida ma’lumot bering Javob: Algoritmni aniq sxema bo’yicha tuzish zarur bo’lib qoladigan sodda hollar ham mavjud. Bunday hollarda yechilish algoritmi avval biron kim tomonidan olingan masalalarni misol keltirish mumkin. Masalan, differensial tenglamalarni sonli integrallash uchun Eyler metodi. Bu metod masalani yechish uchun umumiy holda ifodalangan algoritmdir. Demak, algoritmlarni baholash uchun ikkita asosiy kretiriya mavjud ekan. Algoritmni ishlash vaqti bo’yicha baholash Algoritmni bajarish uchun xotiradan egallagan hajmi bo’yicha baholash Algoritmlarni asimptotik (O()) baholash – algoritmda kiruvchi ma’lumotlarning bajariladigan amallar soniga ma’lum bir qonuniyatlar asosida mos qo’yilishidir. Bu qonuniyatlar kvadratik, factorial, logarifmik bo’lishi mumkin. Agar kiruvchi ma'lumotlarning o'lchamlari oshsa, algoritmning bajarilish vaqti f(N) funksiyasi bilan bir xil tezlikda oshsa, algoritmda O(f(n)) murakkablik bor. Agar kiruvchi ma'lumotlarning o'lchamlari oshsa, algoritmning bajarilish vaqti f(N) funksiyasi kvadratik tezlikda oshsa, algoritmda O(f(n^2)) murakkablik bor. Uch asimptotik belgilar asosan algoritmlarning vaqt murakkabligini ifodalash uchun ishlatiladi : Θ-notation ( teta ); O-notation ( O ); Ω notasi ( Omega ). Savol: Integrallarni taqribiy hisoblash algoritmlari haqida ma’lumot bering Javob: Aniq integrallarning qiymatini taqribiy hisoblashning trapesiya va Simpson formulalari yordamida sonli natijalar olish mumkin. integralni to’g’ri to’rtburchaklar formulasidan foydalanib taqribiy hisoblansin. . To’g’ri to’rtburchaklar formulasi. Bu formulani keltirib chiqarish uchun dastlab kesmani nuqtalar bilan n ta teng bo’lakka bo’lamiz. Buning uchun integrallash kesmasini ta bo’lakka bo’lamiz va hisoblashlar natijalarini keltiramiz: Bizning misolda bo’lgani uchun, to’g’ri to’rtburchaklar formulasiga asosan, quyidagi natijani hosil qilamiz. X=0.1; =0.9901 X=0.2; =0.9615 X=0.3; =0.9174 X=0.4; =0.8621 X=1.0 =0.5000 .5998 . Dastur kodi #include #include using namespace std; double funk(double x) { return (1.0/(1+x*x)); } int main() { double a,b,S=0, xa; int n=10; cout<<"integral chegarasini kiriting"< cin>>a>>b;
xa=a+0.1; while (xa
{
S+=funk(xa); } S=S*fabs(b-a)/n; cout << S; return 0; } 2. integralni trapetsiyalar formulasi yordamida taqribiy hisoblang. Bunda ham deb oling. Yechish: va bo’lgani uchun Quyidagi masalalar uchun algoritm tuzing va uni tahlil qiling. Dastur kodini yozib natija oling. 1-masala. Ikki o’lchamli kvadrat matritsa berilgan. Uning har bir satridagi eng katta elementlarini aniqlash dasturini tuzing. Kirish ma'lumotlari n natural son berilgan. A[n][n] massiv berilgan. Chiquvchi ma’lumotlar Har bir satrdan eng katta elementlarni chiqaring. Dastur kodi: #include using namespace std; int main() { int n;
cin >> n; int a[n][n], m; for(int i=1; i<=n; i++) { for(int j=1; j<=n; j++) { cin>>a[i][j]; } }
{ m=a[i][1]; for(int j=2; j<=n; j++) { if(a[i][j]>m) { m=a[i][j]; } }
}
2-masala. Quyidagi funksiyani to’rtburchaklar, Trapetsiya va Simpson formulalari yordamida taqribiy hisoblash dasturini tuzing Dastur kodi: #include #include using namespace std; int main() { double a, b, s=0, x1, n=10; cin >> a >> b; x1=(b-a)/n; // x1- bu yerda delta x; a=a+x1; while(a { s+=sin(a)/(1+a*a); a=a+x1; } s=s*x1; cout << s; }
Download 87.25 Kb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling