碧海潮声大学生网

标题: 百鸡问题 [打印本页]

作者: 随风    时间: 2006-4-26 03:08
标题: 百鸡问题
公元前五世纪,我国古代数学家张丘建在《算经》一书中提出了“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?
作者: 随风    时间: 2006-4-26 03:09
#include"stdio.h"
main( )
{
int cocks,hens,chicks;
cocks=0;
printf("cocks,hens,chicks\n");
while(cocks<=19)
  {
  hens=0;
  while(hens<=33)
   {
   chicks=100-cocks-hens;
   if(5*cocks+3*hens+chicks/3==100&&chicks%3==0)
   printf("%d,%d,%d\n",cocks,hens,chicks);
   hens=hens+1;
   }
  cocks=cocks+1;
  }
  getch();
}
作者: 你和我的距离    时间: 2006-4-26 04:15
呵呵,这不是数值分析里面的一个算法例子么?(不知道是VB还是数值分析哈,呵呵)
作者: 随风    时间: 2006-4-26 20:48
用文件实现
#include"stdio.h"
void calculate(int cocks,int hens,int chicks,FILE *fp)
{while(cocks<=19)
  {
  hens=0;
  while(hens<=33)
   {
   chicks=100-cocks-hens;
   if(5*cocks+3*hens+chicks/3==100&&chicks%3==0)
   fprintf(fp,"%d,%d,%d\n",cocks,hens,chicks);
   hens=hens+1;
   }
  cocks=cocks+1;
  }
}
main( )
{
int cocks,hens,chicks=0;
FILE *fp;
  if((fp=fopen("data.txt","a"))==NULL)
{printf("Can&#39;t open file data.txt!\n");
  exit(0);}
  fprintf(fp,"cocks,hens,chicks\n");
  calculate (cocks,hens,chicks,fp);
  fclose(fp);
  }




欢迎光临 碧海潮声大学生网 (http://www.zjoubbs.com/) Powered by Discuz! X3.2