C言語_練習問題4-5コイン交換

4641 ワード

練習問題4-5コイン交換(20点)
小銭を5点、2点、1点の硬貨に両替するには、硬貨ごとに少なくとも1枚が必要ですが、いくつかの異なる両替方法がありますか?
入力フォーマット:1行に両替する小銭の金額x∈(8100)を入力します.
出力フォーマット:5点、2点、1点硬貨の数の順に大きい順から小さい順に、各種の交換法を出力することが要求される.各行は「fen 5:5分硬貨数、fen 2:2分硬貨数、fen 1:1分硬貨数、total:硬貨総数」というフォーマットで出力されます.最後の行は「count=換法個数」を出力します.
入力サンプル:13出力サンプル:fen 5:2,fen 2:1,fen 1:1,total:4 fen 5:1,fen 2:3,fen 1:2,total:6 fen 5:1,fen 2:2,fen 1:4,total:7 fen 5:1,fen 2:1,fen 1:6,total:8 count=4#3回forループシートを用いてすべての可能な状況を挙げ,ifで加算がXに等しい場合をフィルタリングする
#include
int main()
{
	int x;
	int count = 0;
	scanf("%d",&x); 
		for(int k = x/5;k>0;k--){//          
			for(int m = x/2;m>0;m--){//       
				for(int j = x;j>0;j--){//    1  
					if(5*k + 2*m + j == x){//        k,m,j 
					printf("fen5:%d, fen2:%d, fen1:%d, total:%d
"
,k,m,j,k+m+j); count++; } } } } printf("count = %d",count); return 0; }