用 100 文钱买 100 只鸡,公鸡、母鸡、小鸡各买多少只?

百钱买百鸡问题:公鸡五文钱一只,母鸡三文钱一只,小鸡三只一文钱,用 100 文钱买 100 只鸡,公鸡、母鸡、小鸡各买多少只?

本程序要求解的问题是:给定一个正整数 n,用 n 文钱买 n 只鸡,问公鸡、母鸡、小鸡各买多少只?
输入格式
输入一个正整数 n。

输出格式
如果有解,依次输出公鸡、母鸡、小鸡的个数(用正整数表示)。

如果无解,输出"No Answer."。

数据范围
1≤n≤200

输入

100

输出

0 25 75
4 18 78
8 11 81
12 4 84

思路

根据题意可得到三种鸡的价格不同数目不同。故应该用循环结构进行运算,得出数目并利用判断判断是否符合条件,且需注意在不同n时三种及的最大数目也不同应在条件中进行相应运算。

#include<stdio.h> 
int main(){
	int x=0,y=0,z=0,n,m=0;    //定义变量
	scanf("%d",&n);           //输入题中所给的n
	for(x=0;x<=n/5;x++){      //进入公鸡数目循环
		for(y=0;y<=n/3;y++){     //进入母鸡数目循环
				z=n-x-y;         //求得小鸡数目
				if(z%3==0&&5*x+3*y+z/3==n&&x+y+z==n){     //保证三种鸡数目符合条件
					printf("%d %d %d\n",x,y,z);    //输出符合条件的三种鸡的数目
					m=1;
				}
	}
		}
		if(m==0){
			printf("No Answer.\n");        //当都不符合时输出题目要求的字符
		}
				
	
return 0;	
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值