
▶
中国古代著名的一次不定方程组问题
一、鸡兔同笼问题(《孙子算经》)
原题:"今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?"(约公元 5 世纪)
题意:鸡兔同笼,共有 35 个头,94 只脚,求鸡兔各多少只。
1. 古代解法:除减法(抬脚法)
将脚数除以 2:94÷2=47
用 47 减去头数 35,得兔数:47-35=12
鸡数:35-12=23
原理:让每只鸡单脚站立(剩 1 脚),每只兔双脚站立(剩 2 脚)。此时脚数 47 比头数 35 多出的 12 即为兔子数(每只兔多 1 脚)。
2. 现代解法:二元一次方程组
设鸡 x 只,兔 y 只:
plaintext
x + y = 35 (头数)
2x + 4y = 94 (脚数)
解法:
由第一式得:x = 35 - y
代入第二式:2 (35-y) + 4y = 94 → 70 - 2y + 4y = 94 → 2y = 24 → y = 12
则 x = 35 - 12 = 23
解:鸡 23 只,兔 12 只。
二、百钱百鸡问题(《张丘建算经》)
原题:"今有鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。凡百钱买鸡百只。问鸡翁母雏各几何。"(约公元 5-6 世纪)
题意:公鸡每只 5 钱,母鸡每只 3 钱,小鸡 3 只 1 钱,用 100 钱买 100 只鸡,求三种鸡各多少只。
1. 数学模型
设公鸡 x 只,母鸡 y 只,小鸡 z 只:
plaintext
x + y + z = 100 (总只数)
5x + 3y + z/3 = 100 (总钱数)
且 x,y,z 均为非负整数,z 是 3 的倍数。
2. 解法:消元法
由第一式得:z = 100 - x - y
代入第二式并化简:7x + 4y = 100
求此方程的非负整数解:
通解:
特解:x=0,y=25,则 z=75
通解公式:x=4t,y=25-7t,z=75+3t(t 为整数)
约束条件:x≥0,y≥0,z≥0 且 z 是 3 的倍数
得 t=0,1,2,3,对应四组解:
四组解:
(0, 25, 75):0 只公鸡,25 只母鸡,75 只小鸡
(4, 18, 78):4 只公鸡,18 只母鸡,78 只小鸡
(8, 11, 81):8 只公鸡,11 只母鸡,81 只小鸡
(12, 4, 84):12 只公鸡,4 只母鸡,84 只小鸡
注:《张丘建算经》原书只给出前三组解,因当时无 "0" 的概念。
三、其他经典一次不定方程组问题
1. 五家共井问题(《九章算术》)
原题:五户人家共用一口井,各有井绳。甲家绳 2 条 + 乙家绳 1 条 = 井深;乙家绳 3 条 + 丙家绳 1 条 = 井深;丙家绳 4 条 + 丁家绳 1 条 = 井深;丁家绳 5 条 + 戊家绳 1 条 = 井深;戊家绳 6 条 + 甲家绳 1 条 = 井深。求各家绳长和井深。
数学模型(设各家绳长为 a,b,c,d,e,井深 h):
plaintext
2a + b = h
3b + c = h
4c + d = h
5d + e = h
6e + a = h
特点:六元一次不定方程组(5 个方程,6 个未知数),有无数解,《九章算术》给出最小正整数解。
2. 物不知数问题(《孙子算经》,中国剩余定理原型)
原题:"今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?"
题意:一个数除以 3 余 2,除以 5 余 3,除以 7 余 2,求这个数。
解法(宋代秦九韶 "大衍求一术"):
构造三个数:
70(被 5、7 整除,除以 3 余 1)
21(被 3、7 整除,除以 5 余 1)
15(被 3、5 整除,除以 7 余 1)
解:N = 70×2 + 21×3 + 15×2 - 2×105 = 23
通解:N = 23 + 105k(k 为非负整数),最小正整数解为 23。
四、中国古代一次不定方程组问题的历史价值
开创数学新领域:《张丘建算经》的 "百鸡问题" 是世界上最早关于不定方程组的完整表述,比印度早 400 多年,比西方早 1000 多年。
算法创新:
《九章算术》的 "方程术"(直除法)是现代矩阵消元法的雏形
秦九韶的 "大衍求一术" 解决了一次同余方程组问题,被称为 "中国剩余定理"
数学思想:
体现了 "化繁为简" 的转化思想(如鸡兔同笼的抬脚法)
展示了 "枚举 - 验证" 的解题策略(百钱百鸡的多解求解)
反映了中国古代数学注重实用性的特点
五、一次不定方程组的现代应用
数学教育:作为培养方程思维的经典例题,帮助理解 "多元变量" 和 "约束条件" 概念
计算机算法:
枚举法→计算机暴力搜索
消元法→线性方程组求解程序
同余问题→密码学中的 RSA 算法基础
实际问题建模:
资源分配(如生产计划安排)
组合优化(如采购方案设计)
数字游戏和谜题设计
总结
中国古代一次不定方程组问题(鸡兔同笼、百钱百鸡等)不仅展示了古人的数学智慧,也为现代数学教育和应用提供了丰富素材。这些问题的解决思路(消元法、枚举法、同余理论等)与现代二元一次方程组解法一脉相承,体现了数学思想的永恒魅力。
思考:你能尝试用二元一次方程组解决 "鸡兔同笼" 的变式问题吗?如 "鸡与兔共有 100 只,鸡脚比兔脚多 80 只,求鸡兔各多少只?"