//eng qimmat narx bo’yicha sumkaga solish;
vector sumka;
int mSumka = 0;
int nSumka = 0;
for (int i=0;i<3;i++)
{
if(mSumka + mahsulot[i].massa <= 35)
{
mSumka+=mahsulot[i].massa;
nSumka+=mahsulot[i].narx;
sumka.push_back(mahsulot[i]);
}
}
//natijani ko'rish
cout<<"sumkada joylashtirilgan: "<
<<" kg. umumiy narxi "<
cout<<"-----------------------------------------------------"<
cout<<"sumkada joylashritilgan mahsulotlar: "<
for (int i=0;i
{
cout<
}
}
2-masala.
Turli xil o’lchamga ega bo’lgan n ta qutini yuk mashinasiga joylashtirish haqidagi masalani xasislik algoritmlari bilan yeching. Qutilarni shunday joylashtiringki, bo’sh joydan maksimal foydalanib, iloji boricha ko’proq qutilarni joylashtiring. Bo’sh joy hajmi V ga teng va M kg gacha yuk olishi mumkin.
Dastur kodi
Dastur kodi
#include
#include
using namespace std;
struct quti
{
int hajm;
int massa;
float zichlik;
};
int main()
{
//ma'lumotlarni kiritish;
vector quti1;
quti k;
int n;
cout<<"qutilar soni ";
cin>>n;
for(int i=0; i
{
cout<
cin>>k.hajm;
cin>>k.massa;
k.zichlik=1.0*k.massa/k.hajm;
quti1.push_back(k);
}
int M,V;
cout<<"Bo'sh joy massasini va hajmini kiriting ";
cin>>M;
cin>>V;
//zichlik bo'yicha saralash
//zichlik bo'yicha saralash
for(int i=0; i
for(int j=i+1; j
if(quti1[i].zichlik>quti1[j].zichlik)
{
quti temp=quti1[i];
quti1[i]=quti1[j];
quti1[j]=temp;
}
//eng kichik zichlik bo'yicha joylashtirish;
vector joyZichlik;
int hzich = 0;
int mzich = 0;
for (int i=0;i
{
if(hzich + quti1[i].hajm <= V && mzich+quti1[i].massa<=M)
{
mzich+=quti1[i].massa;
hzich+=quti1[i].hajm;
joyZichlik.push_back(quti1[i]);
}
}
//natijani ko'rish
cout<<" joylashtirilgan: "<
cout<<"-----------------------------------------------------"<
cout<<"joylashritilgan qutilar: "<
for (int i=0;i
{
cout<
}}
205 -19 -TT 203-19-TT 204-19 TT
http://fayllar.org
Do'stlaringiz bilan baham: |