1.百元买百鸡
中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱买百鸡问题”,鸡翁一,值钱五,鸡母一,值钱三,鸡稚三,值钱一,百钱买百鸡,问翁,母,稚各几何?
int main()
{
int cock,hen,chick;
for(cock=0;cock<=20;cock++){
for(hen=0;hen<=33;hen++){
for(chick=0;chick<=99;chick++){
if(5*cock+3*hen+chick/3==100){
if(cock+hen+chick==100){
if(chick%3==0){
printf("公鸡:%d 母鸡: %d 小鸡:%d\n",cock,hen,chick);
}
}
}
}
}
}
return 0;
}
2、三天打鱼两天晒网
渔夫从公元某年的1月1号开始每三天打一次渔,两天晒一次网,编程实现当输入2016年1月1日以后的任意一天,输出该渔夫是在打渔还是在晒网
int leap(int a){
if(a%4==0&&a%100!=0||a%400==0)
return 1;
else
return 0;
}
int number(int year,int month,int day){
int sum=0,i,j,a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int b[12]={31,29,31,30,31,30,31,31,30,31,30,31};
if(leap(year)==1)
for(i=0;i<month-1;i++)
sum+=b[i];
else
for(j=0;j<month-1;j++)
sum+=a[j];
sum+=day;
return sum;
}
void main(){
int year,month,day,m,f;
printf("\n请依次输入年 月 日,形如:2016,1,1 然后Enter键\n");
scanf("%d,%d,%d",&year,&month,&day);
m=number(year,month,day);
printf("第%d天\n",m);
f=fish(year,month,day);
if(f==0)
printf("渔夫晒网");
else
printf("渔夫打渔");
}
int fish(int year,int month,int day){
int n=number(year,month,day);
return(n%5==0||n%5==4)?0:1;
}