Algoritmlarni loyihalash Mavzu: Algoritmlarni loyihalash va tahlil qilish. Chiziqli dasturlash masalalari va ularni yechish algoritmlari



Download 0,52 Mb.
Sana13.06.2022
Hajmi0,52 Mb.
#664828
Bog'liq
1-dars

Algoritmlarni loyihalash Mavzu: Algoritmlarni loyihalash va tahlil qilish. Chiziqli dasturlash masalalari va ularni yechish algoritmlari.

Dars rejasi

Algoritmlarning qiyosiy bahosi

Algoritmlarni baholash uchun ikkita asosiy kretiriya mavjud.

  • Algoritmni ishlash vaqti bo’yicha baholash
  • Algoritmni bajarish uchun xotiradan egallagan hajmi bo’yicha baholash

Algoritmlarning qiyosiy bahosi

  • 𝑭𝒂(𝒏) algoritmning qiyinligi deganda berilgan kirish ma’lumotlari uchun, aniq muammoani (masalani) yechish uchun, ushbu formal tizimda algoritmni tugallash uchun bajariladigan (𝑛) ta “elementar” amallar soni tushuniladi.

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.

  • 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.

Algoritmning qiyinligi va vaqt bo’yicha bahosi

  • Algoritmni yozish tilidagi elementlar operatsiyalar (amallar)
  • Algoritmning qiyinlik funktsiyasini olishda quyidagi “elementar” amallar hisobga olinadi:
  • 1. Oddiy ta’minlash: a←b;
  • 2. Bir o’lchamli indekslash a[i]: ((a – xotira adresi)+i*[element uzunligi]);
  • 3. Arifmetik amallar: (*, /, -, +);
  • 4. Taqqoslash amallari: a, ≤, ≥, <>);
  • 5. Mantiqiy amallar (or, and, not).
  • Tahlilda ushbu operatsiyalardan, tarmoqlanish konstruktsiyasida taqqoslash operatsiyasi bilan bog’liqligini hisobga olib, adres bo’yicha o’tish komandasi chiqarib tashlanadi.

Dastur kodi. #include

  • Dastur kodi. #include
  • using namespace std;//ulchamlari bir xil bulgan matritsalar uchun
  • int main()
  • {
  • int a[10][10],b[10][10],c[10][10],r,d,i,j,k;
  • cout<<"satrlar soni=";
  • cin>>r;
  • cout<<"ustunlar soni=";
  • cin>>d;
  • cout<<"matritsa elementlarini kiriting=\n";
  • for(i=1;i<=r;i++)
  • { for(j=1;j<=d;j++) {
  • cin>>a[i][j];} }
  • cout<<"ikkinchi matritsa elementlarini kiriting=\n";
  • for(i=1;i<=r;i++)
  • { for(j=1;j<=d;j++)
  • cin>>b[i][j];}
  • for(i=1;i<=r;i++)
  • { for(j=1;j<=d;j++)
  • { c[i][j]=0;
  • for(k=1;k<=d;k++)
  • {
  • c[i][j]+=a[i][k]*b[k][j]; } } }
  • //natijani chop qilish
  • for(i=1;i<=r;i++)
  • {
  • for(j=1;j<=d;j++)
  • {
  • cout<
  • }
  • cout<<"\n";
  • }
  • return 0;
  • }

Chiziqli algoritm - “ketma-ketlik” konstruktsiyasi

  • Bu algoritmning qiyinligi ketma-ket bajariladigan konstruktsiya bloklarining qiyinliklari yig’indisiga teng bo’ladi

Dastur kodi

  • 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);
  • xa+=0.1;
  • }
  • S=S*fabs(b-a)/n;
  • cout << S;
  • return 0; }

Dastur kodi

  • 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);
  • xa+=0.1;
  • }
  • S=(a+b)/2+S;
  • S=S*fabs(b-a)/n;
  • cout << S;
  • return 0; }

Mustaqil ishlash uchun savollar

  • Ushbu darsda ko’rib chiqilgan misollar va ularni yechish algoritmlari uchun dastur tuzing, xulosalar chiqaring.

Download 0,52 Mb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish