百鸡问题-小记
小记 问题
2023-09-11 14:15:08 时间
最近在看《数学与人类文明》,挺有感悟的,中学以前学的知识都是几百年以前古人得到的结果,当然可能没有今天数学的那么严谨,然而数学与社会的发展是离不开的,不论是西方的还是中国古代的,溯本追源,这是在课堂中不能学到的,书中提到了——百鸡问题,古人也有记载,如今,计算机发展快速,既然学了C语言,试试吧。
/*
百鸡问题
来源《数学与人类文明》蔡天新著,第90页所提到的《张邱建算经》最后一道题目:
公鸡每只值5文钱,母鸡每只值3文钱,而3只小鸡值1文钱。用100文钱买100只鸡,
问:这100只鸡中,公鸡、母鸡和小鸡各有多少只?
1--->x+y+z =100
2--->5x+3y+(1/3)z =100
x,y,z are all positive integral.
*/
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main(void)
{
unsigned int x=0;
unsigned int y=0;
unsigned int z=0;
unsigned int solve_num=0;
printf("Folleing are possible plans to buy 100 fowls with 100 Yuan.\n");
for(x=0; x<=20; x++) //traversal cock
{
for(y=0; y<=33; y++) //traversal hen
{
z=100-x-y;
//put z%3==0 first
if(z%3==0 && (5*x+3*y+z/3)==100)
{
solve_num++;
printf("%d cock = %d, hen = %d, chick = %d\n",solve_num, x, y, z);
}
}
}
return 0;
}
运行结果:
Folleing are possible plans to buy 100 fowls with 100 Yuan.
1 cock = 0, hen = 25, chick = 75
2 cock = 4, hen = 18, chick = 78
3 cock = 8, hen = 11, chick = 81
4 cock = 12, hen = 4, chick = 84
相关文章
- 小记5.8面试
- Java 小记 — RabbitMQ 的实践与思考
- tcp网络驱动芯片w5500使用小记
- 小小输入法使用小记
- [转]Map.getOrDefault被坑小记与optional
- Java学习小记-基本数据类型&类型转换
- virtualbox manager命令小记
- Ubuntu 14.04 LAMP搭建小记
- 小A老空调需求管理小记
- Java transient关键字使用小记
- Keil5安装和使用小记
- RFID射频卡写入手机NFC心路小记
- 笔记本扩展屏幕间歇性闪黑屏经历小记
- Oracle问题小记五:服务启动-索引-子查询-分页存储过程
- 使用Maven自动部署Java Web项目到Tomcat问题小记
- EF基础知识小记五(一对多、多对多处理)