编写程序,输入一个正整数N(1≤N≤1000),计算出N元人民币兑换成1元,2元和5元纸币的所有组合,要求组合中1元、2元和5元必须存在、输出每一种组合的情况以及总的组合数。
#include<iostream>
using namespace std;
int main()
{
int N,i,j,k,n=0;
cout<<"请输入一个正整数N(1≤N≤1000)"<<endl;
cin>>N;
for(i=1;i<=N;i++)
{
for(j=1;j<=N/2;j++)
{
for(k=1;k<=N/5;k++)
{
if(i*1+j*2+k*5==N)
{
cout<<"其中一元有:"<<i<<"张"<<endl<<"二元有:"<<j<<"张"<<endl<<"五元有:"<<k<<"张"<<endl;
n++;
}
}
}
}
cout<<"一共有:"<<n<<"种组合方式"<<endl;
return 0;
}
输入10时的运行结果为: