题目描述:
公鸡五文钱一只,母鸡三文钱一只,小鸡三只一文钱,用 100文钱买 100 只鸡,公鸡、母鸡、小鸡各买多少只?
本程序求解问题:
给定一个正整数 n,用 n 文钱买 n 只鸡,问公鸡、母鸡、小鸡各买多少只?
输入格式:
输入一个正整数 n。
输出格式:
如果有解,依次输出公鸡、母鸡、小鸡的个数(用正整数表示)。
如果无解,输出"No Answer."
。
数据范围:
1≤n≤200。
思考:
(1)定义公鸡i只,母鸡j只,总数n只,则小鸡(n-i-j)只,完成输入
int i,j,flag=0;
int n;
scanf("%d",&n);
(2)利用多个循环进行输出个数并对是否有解做出判断:flag=1表示有解,flag=0表示无解
for(i=0;i<=n/5;i++)
{
for(j=0;j<=n/3;j++)
{
if(i*5+j*3+(n-i-j)/3.0==n)
{
flag=1;
printf("%d %d %d\n",i,j,n-i-j);
}
}
}
if(flag=0)
{printf("No Answer.\n");
}
完整代码:
#include<stdio.h>
#include<math.h>
int main()
{
int i,j,flag=0;
int n;
scanf("%d",&n);
for(i=0;i<=n/5;i++)
{
for(j=0;j<=n/3;j++)
{
if(i*5+j*3+(n-i-j)/3.0==n)
{
flag=1;
printf("%d %d %d\n",i,j,n-i-j);
}
}
}
if(flag=0)
{printf("No Answer.\n");
}
return 0;
}