水题,被格式坑了两次!
#include<iostream>
using namespace std;
int main(){
int w1,rate1,w2,rate2,w3,rate3,rate4;
int cost;
int best2,best3,best4;
int i=1;
while(cin >> w1)
{
int w;
cin >> rate1;
cin >> w2 >> rate2 >> w3 >> rate3 >> rate4;
best2=(w1+1)*rate2;
best3=(w2+1)*rate3;
best4=(w3+1)*rate4;
cout << "Set number " << i << ":" << endl;
while(cin >> w)
{
if(w==0)
break;
if(w>0&&w<=w1)
{
cost=w*rate1;
if(best2 < cost)
cout << "Weight (" << w << ") has best price $"<< best2 << " (add " << w1+1-w << " pounds)" << endl;
else
cout << "Weight (" << w << ") has best price $"<< cost << " (add " << 0 << " pounds)" << endl;
}
else if(w>=(w1+1)&&w<=w2)
{
cost=w*rate2;
if(best3 < cost)
cout << "Weight (" << w << ") has best price $"<< best3 << " (add " << w2+1-w << " pounds)" << endl;
else
cout << "Weight (" << w << ") has best price $"<< cost << " (add " << 0 << " pounds)" << endl;
}
else if(w>=(w2+1)&&w<=w3)
{
cost=w*rate3;
if(best4 < cost)
cout << "Weight (" << w << ") has best price $"<< best4 << " (add " << w3+1-w << " pounds)" << endl;
else
cout << "Weight (" << w << ") has best price $"<< cost << " (add " << 0 << " pounds)" << endl;
}
else if(w>=(w3+1)&&w<=1000)
{
cost=w*rate4;
cout << "Weight (" << w << ") has best price $"<< cost << " (add " << 0 << " pounds)" << endl;
}
}
cout << endl;
i++;
}
return 0;
}