Pagini recente » Cod sursa (job #698645) | Cod sursa (job #2219006) | Cod sursa (job #1443733) | Cod sursa (job #344738) | Cod sursa (job #892429)
Cod sursa(job #892429)
#include<iostream>
using namespace std;
int n,i,man1,inv,ordine[9];
double c[9],g[8],ef[9],gv,man,castig;
int main ()
{cout<<"Greutate:";cin>>gv;
cout<<"Nr. de obiecte:";cin>>n;
for (i=1;i<=n;i++)
{
cout<<"c["<<i<<"]=";cin>>c[i];
cout<<"g["<<i<<"]=";cin>>g[i];
ordine[i]=i;
ef[i]=c[i]/g[i];
}
do
{
inv=0;
for (i=1;i<=n-1;i++)
if (ef[i]<ef[i+1])
{
man=ef[i];
ef[i]=ef[i+1];
ef[i+1]=man;
man=c[i];
c[i]=c[i+1];
c[i+1]=man;
man=g[i];
g[i]=g[i+1];
g[i+1]=man;
inv=1;
man1=ordine[i];
ordine[i]=ordine[i+1];
ordine[i+1]=man1;
}
}
while (inv!=0);
i=1;
while (gv>0&&i<=n)
{
if(gv>g[i])
{ cout<<"Obiectul "<<ordine[i]<<" "<<1<<'\n';
gv=gv-g[i];
castig=castig+c[i];
}
else
{ cout<<"Obiectul "<<ordine[i]<<" "<<gv/g[i]<<'\n';
castig=castig+c[i]*gv/g[i];
gv=0;
}
i++;
}
cout<<"Castig total: "<<castig;
return 0;
}