C++ N元买百鸡问题用不多于N元购买100只鸡,可以购买的鸡有三种,母鸡5元一只,记为x只,公鸡3元一只,记为y只,小鸡1/3元一只,记为z只.输入拥有的钱数N(不一定要花完),对于每个输入,请输出x,y,z
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 19:19:22
C++ N元买百鸡问题用不多于N元购买100只鸡,可以购买的鸡有三种,母鸡5元一只,记为x只,公鸡3元一只,记为y只,小鸡1/3元一只,记为z只.输入拥有的钱数N(不一定要花完),对于每个输入,请输出x,y,z
C++ N元买百鸡问题
用不多于N元购买100只鸡,可以购买的鸡有三种,母鸡5元一只,记为x只,公鸡3元一只,记为y只,小鸡1/3元一只,记为z只.
输入拥有的钱数N(不一定要花完),对于每个输入,请输出x,y,z所有可行解,按照x,y,z依次增大的顺序输出.
输入输入拥有的钱数N(不一定要花完)
输出对于每个输入,请输出x,y,z所有可行解,按照x,y,z依次增大的顺序输出.
#include<iostream>
using namespace std;
int main()
{
int x=0,y=0,z=0,m=0;
int N;
cin>>N;
for(m=100-x;m>=0;x++)
{
x=0; y=0; m=100-x;
for(z=100-x-y;z>=0;y++)
{ z=100-x-y;
if((5*x+3*y+z/3)<=N)
if(x<y<z)
cout<<"x="<<x<<"y="<<y<<"z="<<z<<endl;
}
} return 0;
}
我自己的程序是这样的,但是运行后输入35,一直是x=0,y=0,z=100无限循环 请问是什么原因 怎么改
C++ N元买百鸡问题用不多于N元购买100只鸡,可以购买的鸡有三种,母鸡5元一只,记为x只,公鸡3元一只,记为y只,小鸡1/3元一只,记为z只.输入拥有的钱数N(不一定要花完),对于每个输入,请输出x,y,z
for(int x=0;xN) break;
for(int y=0;x+yN) break;
for(int z=0;x+y+zN)
break;
cout