Dasturiyinjiniring



Download 1,19 Mb.
bet2/2
Sana31.12.2021
Hajmi1,19 Mb.
#241395
1   2
Bog'liq
Algoritmlarni loyihalashtirish 2

Kirish ma'lumotlari

Birinchi quti tomonlari A1, B1 va C1. Ikkinchi quti tomonlari A2, B2 va C2 musbat sonlar berilgan



Chiquvchi ma’lumotlar

Agar qutilar bir xil bo'lsa, "Qutilar teng" ni chiqaring. Agar birinchi qutini ikkinchisiga qo'yish mumkin bo'lsa, "Birinchi quti ikkinchisidan kichikroq" ni chiqaring. Agar ikkinchi qutini birinchisiga qo'yish mumkin bo'lsa, "Birinchi quti ikkinchisidan kattaroq" ni chiqaring. Aks holda, "Qutilar taqqoslanmaydi" ni chiqaring.



T/r.

Kiruvchi ma’lumotlar

Chiquvchi ma’lumotlar

1

1 2 3
3 2 1

Qutilar teng

2

2 2 3
3 2 1

Birinchi quti ikkinchisidan kattaroqdir

3

2 2 3
3 2 3

Birinchi quti ikkinchisidan kichikroq

4

3 4 5
2 4 6

Qutilar taqqoslanmaydi

Algoritmni amalga oshirish. (dastur)
#include

#include

#include

#include

#include

using namespace std;


int main()
{

int a,b,c, a2,b2,c2;


int a1[3], b1[3];
for(int i=0; i<3; i++)

{


cin>>a1[i];

}


for(int i=0; i<3; i++)

{


cin>>b1[i];

}


sort(a1, a1+3);

sort(b1, b1+3);

int t1=0, t2=0, t3=0;

for(int i=0; i<3; i++)

{

if (a1[i]==b1[i]) t1++;



if (a1[i]>b1[i]) t2++;

if (a1[i]

}

if(t1==3) cout<<"Boxes are equal";



else

if((t2+t1)==3) cout<<"The first box is larger than the second one";

else

if((t3+t1)==3) cout<<"The first box is smaller than the second one";



else

cout<<"Boxes are incomparable";

return 0;

}


Dasturni tekshirish (Yechim olish)




Savol: Quyidagi ketma-ketlik bo’yicha yig’indini aniqlang.

S=1+1+2+1+2+3+1+2+3+4+….1+2+3+…n (n<=1000000)

Kiruvchi ma’lumotlar: n soni kiritiladi

Chiquvchi ma’lumotlar: S yig’inchi hisoblanadi




Kiruvchi


Chiquvchi

1

1

1

2

4

20


Algoritmni amalga oshirish. (dastur)
#include

#include

#include

#include

#include
using namespace std;

int main()

{

int n,summ=0,summ2=0;



cout<<"n:= ";cin>>n;

for(int i=0;i<=n;i++)

{

summ+=i;



summ2+=summ;

}


cout<<"S:= "<return 0;

}


Dasturni tekshirish (Yechim olish)





  1. Tovada bir vaqtning o’zida k ta kotletni qovurish mumkin. kotletning bir tomonini pishirish uchun uni uzluksiz m minut qovurish kerak. N ta kotletni qovurish uchun eng qisqa vaqtni aniqlang k>n


Kiruvchi ma’lumotlar: 30000 dan oshmagan k,m,n butun sonlar kiritiladi

Chiquvchi ma’lumot: kotletlarni qovurish uchun minimal vaqt (minutda) chiqariladi.




Kiruvchi


Chiquvchi

1

1 1 1

2

2

2 2 1

4



  1. TATU Samarqand filiali talabalari shahar bo’ylab avtobusda sayohat qilishni rejalashtirdi. Talabalar ko’p bo’lganligi uchun ular 437 sm li 2 qavatli avtobus buyurtma qilishdi. Shahardagi barcha ko’priklardan ularning avtobusi o’ta olish muammosi paydo bo’ldi. Ularda barcha ko’priklarning balandligi ma’lumoti bor. Avtobus nechta ko’prikda o’ta olmasligini aniqlash algoritmini va dasturini tuzing.


Kiruvchi ma’lumotlar: birinchi satrda n ko’priklar soni. Ikkinchi satrda ularning uzunliklari berilgan.

Chiquvchi ma’lumotlar: nechta ko’prikdan o’ta olmasligini aniqlang. Agar bunday ko’priklar bo’lmasa. “NO” yozuvini chiqaring


T/r.


Kiruvchi


Chiquvchi

1

1
763

NO

2

3
763 245 113


2 ta ko’prik


3

1
437

1 ta ko’prik




Algoritmni amalga oshirish. (dastur)

#include
using namespace std;
int main()
{
int n,qadam=0;
cout<<"Ko'priklar sonini kiriting: ";cin>>n;
int size[n];
cout<<"Ularning uzunliklarini kiriting: ";
for(int i=0;i
{

cin>>size[i];//son kiritish
}
for(int j=0;j
{
if(size[j]<=437)//nechta ko’prikdan o’ta olishini hisoblash
qadam++;
}
if(qadam==0)
cout<<"NO"<
else
cout<
return 0;
}

Dasturni tekshirish (Yechim olish)







XULOSA


Asosiy mavzu - hisoblash muammolarining samarali algoritmlarini izlash. Ushbu umumiylik darajasida kompyuterni hisoblashning butun sohasi ushbu mavzu bilan bog'liq bo'lib tuyuladi; bizning yondashuvimiz boshqalardan qanday farq qiladi? Algoritmlarni ishlab chiqishda umumiy mavzular va loyihalash tamoyillarini aniqlashga harakat qilamiz. Bizni samarali algoritmlarni loyihalashning asosiy usullarini minimal ma'lumot bilan namoyish etuvchi paradigmatik masalalar va usullar qiziqtiradi.

Hisoblash qobiliyati Ko'plab muammolarda uchraydigan yana bir xususiyat - bu ularning asosan diskretligi. Ko'plab muammolarda uchraydigan yana bir xususiyat-bu ularning asosiy ajralib turishi. Boshqacha qilib aytganda, bu shunday masalalarki, ularda yechim kombinatorial variantlarning keng to'plamidan qidirib topiladi; maqsad aniq belgilangan shartlarni qanoatlantiradigan echimni samarali topishdir.

Hisoblash samaradorligi tushunchasini aniqlash uchun, biz birinchi navbatda ish vaqtining samaradorligiga e'tibor qaratamiz: algoritmlar tez ishlashi kerak. Ammo algoritmlar boshqa resursrlardan foydalanish nuqtai nazaridan ham samarali bo'lishi mumkinligini tushunish muhimdir. Xususan, algoritm tomonidan ishlatilinadigan xotira miqdori ham samaradorlikning muhim jixati bo'lishi mumkin.



Algoritm samaradorligi.

(1)T: algoritm samarali deb ataladi agar real kirish ma'lumotlari uchun u tezkor amalga oshirilsa.

(2)T: algoritm samarali deb ataladi agar u sifatli bajarilishni “to’liq qidirish”(полнiy перебор)ga nisbatan tezroq ta'minlasa.

"To'liq qidirish" usuliga qaraganda ancha yaxshi ishlashni ta'minlaydigan algoritmlar, deyarli har doim qimmatli evristik g'oyani o'z ichiga oladi, buning natijasida ushbu yaxshilanishga erishiladi; Bundan tashqari, ular ko'rib chiqilayotgan masalaning ichki tuzilishi va hisoblash qobiliyati haqida foydali ma'lumotlarni taqdim etadilar.

Polinomial vaqt samaradorlik ko'rsatkichi sifatida

Tabiiy kombinatorial masalalarda qidirish vaqti, kirish ma'lumotlari N hajmiga nisbatan eksponensional o'sishga moyildir; agar o'lcham bittaga ko'paysa, unda imkoniyatlar xajmi bir necha marta ko'payadi. Bunday masalalarni yechish uchun yaxshi algoritm yanada samarali miqyoslash modeliga ega bo'lishi kerak; kirish ma'lumotlarining kattalashib borishi bilan o’zgarmas ko’paytuvchiga(aytaylik, ikki baravar) oshishi bilan algoritmning bajarilish vaqti ham qandaydir o’zgarmas S ko’paytuvchiga ko'payishi kerak.

Download 1,19 Mb.

Do'stlaringiz bilan baham:
1   2




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