“韩信点兵”问题的教学设计
一、给出问题
例:“韩信点兵”问题.(07版高中新教材3,第88页例4)
韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为建立汉朝立下了汗马功劳。据说他在点兵的时候,为了保住军事机密,不让敌人知道部队的实力,采用了下述点兵的方法:先令士兵从1~3报数,结果最后一个士兵报2;再令士兵从1~5报数,结果最后一位士兵报到3;又令士兵从1~7报数,结果最后一个士兵报4.这样,韩信很快地就算出了部队士兵的总人数。请设计一个算法,求出士兵至少有多少人。
何为算法,粗略地讲,是为解决一个特定问题而采取的确定的有限的步骤。做任何事情都应先有解决问题的具体的思路。
下面就来讨论“韩信点兵”问题。
二、寻路求解
“韩信点兵”时采用的是循环数点名法:即士兵从1报到3,再从1又报到3,横排按顺S报数继续,……,直到最后一位士兵报出数2停止。这个报数点名的过程包含着一个简单的数学问题:若设士兵总人数为N,则N=3K1+2(K1=0,1,2,…)其中K1为报名时循环的次数。这样若是循环1到5的正整数报数点名,则士兵总人数为N=5K2+3(K2=0,1,2,…),若采用循环1到7报数点名,则士兵总人数为N=7K3+4(K3=0,1,2,…).显然,满足上面三个条件中任意一个(或2个或3个)都不能确定士兵总人数N.理由很简单,从方程求解的角度来分析上面的三个条件,即满足
N=3K1+2(K1=0,1,2,…) (I)
N=5K2+3(K2=0,1,2,…) (II)
N=7K3+4(K3=0,1,2,…) (III)
当满足一个条件时,相当于二元一次方程求正整数解,没有确定解;当满足其中任两个条件时,相当于两个三元一次方程组求正整数解,一般情况下无定解;当满足三个条件时相当于三个四元一次方程组求正整数解,通常一般情形也无定解。通过以上的分析尽管这些条件虽不能确定具体的数,但可相应地说明该数具有的一些特点。比如满足条件I,可由小到大列出2,5,8,11,14,…一列数,至此,基本上搞清了“韩信点兵”问题揭示的一个简单的数学问题。即知余数和除数确定最小的被除数。
继续从数学的角度来探讨这个问题,即由N=3K1+2(K1=0,1,2,…);
N=5K2+3(K2=0,1,2,…);
N=7K3+4 (K3=0,1,2,…)可变形出(N-2)(N-3)(N-4)=3×5×7K1K2K3(*),求Nmin.由(*)可以发现求Nmin有一定的困难。但欣慰的是在对该问题的分析过程中知道,它总可以分解为五个小问题,每个小问题的解决有相应确定的步骤,这就提醒我们可设计一个算法,借助计算机来求解这个问题的解Nmin.
下面将要解决该问题具体的求解步骤问题。
三、算法设计
如何用自然语言表示该问题的算法呢?可以考虑从特殊的正整数序列中筛选出符合要求的数。
第一步易实现确定最小的除3余2的正整数为2;第二步依次加3得出除3余2的一列数(通项式N=3K1+2,K1=0 1,2,…)2,5,8,11,14…,32,35,…,53,56,…;第三步在此列数中确定最小的除以5余3的正整数为8,正整数8既满足条件I,也满足条件II且是最小的符合要求的数,进而产生一个新的正整数数列,依次加15,得到8,23,38,53,…,即可证明满足条件I和条件II,因为
N=15K4+8,(K4=0,1,2,…)
=3×5K4+3×2+2
=3×(5K4+2)+2 (其中5K4+2为正整数)
满足条件I
N=15K4+8,(K4=0,1,2,……)
=5×3K4+5×1+3
=5×(3K4+1)+3(其中3K4+1为正整数)
满足条件II.
第四步从得到的一列数中找到满足条件III的最小正整数Nmin.这是我们要求的一个数。
在完成了上述步骤后,就找到了所求数53,这5个步骤称为解决“韩信点兵”问题的一个算法。能否在这个算法的基础上做一些优化,以便更简地获得结果呢?
四、优化方案
1.算理拟优化方案
“韩信点兵”问题的算理可从集合的角度去考虑,如附图(略).问题的实质是求对应三个集合的交集中的最小元素问题。该思路能很好的理解“韩信点兵”做法的数学实质。有兴趣的同学可从这方面作一些尝试,找是否有可行的算法,“韩信点兵”问题的算理也可从数列的角度加以考虑,即产生三个数列:
N=3K1+2 (K1=0,1,2,…)
2,5,8,11,14,…,53,…
N=5K2+3 (K2=0,1,2,…)
3,8,13,18,23,28,…,53,…
N=7K3+4 (K4=0,1,2,…)
4,11,18,25,32,…,53,…
从这三个数列中找最小的相同项,即得到53.
2.算法拟优化方案
由(N-2)(N-3)(N-4)=3×5×7K1K2K3知任意改变3,5,7因数的顺序,上面式子不变,因而任取3,5,7的一个排列,就产生类似于上面算法的一个算法,比如,按由大到小即7,5,3步骤也可实现(见教材第89页算法),可见由教材的算理可以有类似的6个元素的全排列种算法。但从本质上说并未真正地优化了算法。但却丰富了该问题的算法。优化算法的思想意识任何时候都应该有。
五、引思启示
(1)“韩信点兵”问题的符合要求的最小正整数53已得到。若要再问还有没有符合要求的其它数?若有第二个数应该是多少?能否找到答案的一个通式来验证。通过“韩信点兵”问题从数学角度加以分析,很快可以得到下面的一个公式,即N=3×5×7K5+53(K5=0,1,2,…),该公式是满足条件I,II,III的通解。可仿上面类似证明。这也说明了用韩信的方法点兵得到的士兵人数是些正整数的集合,因而一个答案是求至少有多少个士兵。从这个例子的分析再次说明了算法是解决某类问题的一系列具体步骤或子程序,只要按这些步骤执行,就能使问题得到解决。
(2)对任何一个数学问题用算法解决都存在一个优化算法的步骤在内。针对某一具体问题的算法,可以通过交流思考,从中去粗取优,存精取巧,做求优求简的改进。寻求新的算法,掌握较成熟的少数算法,将是利用计算机解决问题所需不懈努力的目标。通过例子进一步体会算法的基本思想,体会到一个问题的解决可能存在多种算法,有优劣之分。深切地感受到算法思想在解决一些问题时的优越性、工具性。
杨宏联2019年7月28日该文章发表于《中学数学教学参考》2007年第10期下旬刊
说明:
2007年新版高中数学教材还未试行,那时才开始全员培训高中教师,2007年8月初在宝鸡培训结束后在那个暑假里用一个下午立即写的论文《“韩信点兵”问题的教学设计》,与之相关的各种数学教辅资料还没有出现呢!写论文也是出于当时评审中学数学一级教师的需要。
杨宏联2019年7月31日 https://t.cn/A6PQ6kIC
一、给出问题
例:“韩信点兵”问题.(07版高中新教材3,第88页例4)
韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为建立汉朝立下了汗马功劳。据说他在点兵的时候,为了保住军事机密,不让敌人知道部队的实力,采用了下述点兵的方法:先令士兵从1~3报数,结果最后一个士兵报2;再令士兵从1~5报数,结果最后一位士兵报到3;又令士兵从1~7报数,结果最后一个士兵报4.这样,韩信很快地就算出了部队士兵的总人数。请设计一个算法,求出士兵至少有多少人。
何为算法,粗略地讲,是为解决一个特定问题而采取的确定的有限的步骤。做任何事情都应先有解决问题的具体的思路。
下面就来讨论“韩信点兵”问题。
二、寻路求解
“韩信点兵”时采用的是循环数点名法:即士兵从1报到3,再从1又报到3,横排按顺S报数继续,……,直到最后一位士兵报出数2停止。这个报数点名的过程包含着一个简单的数学问题:若设士兵总人数为N,则N=3K1+2(K1=0,1,2,…)其中K1为报名时循环的次数。这样若是循环1到5的正整数报数点名,则士兵总人数为N=5K2+3(K2=0,1,2,…),若采用循环1到7报数点名,则士兵总人数为N=7K3+4(K3=0,1,2,…).显然,满足上面三个条件中任意一个(或2个或3个)都不能确定士兵总人数N.理由很简单,从方程求解的角度来分析上面的三个条件,即满足
N=3K1+2(K1=0,1,2,…) (I)
N=5K2+3(K2=0,1,2,…) (II)
N=7K3+4(K3=0,1,2,…) (III)
当满足一个条件时,相当于二元一次方程求正整数解,没有确定解;当满足其中任两个条件时,相当于两个三元一次方程组求正整数解,一般情况下无定解;当满足三个条件时相当于三个四元一次方程组求正整数解,通常一般情形也无定解。通过以上的分析尽管这些条件虽不能确定具体的数,但可相应地说明该数具有的一些特点。比如满足条件I,可由小到大列出2,5,8,11,14,…一列数,至此,基本上搞清了“韩信点兵”问题揭示的一个简单的数学问题。即知余数和除数确定最小的被除数。
继续从数学的角度来探讨这个问题,即由N=3K1+2(K1=0,1,2,…);
N=5K2+3(K2=0,1,2,…);
N=7K3+4 (K3=0,1,2,…)可变形出(N-2)(N-3)(N-4)=3×5×7K1K2K3(*),求Nmin.由(*)可以发现求Nmin有一定的困难。但欣慰的是在对该问题的分析过程中知道,它总可以分解为五个小问题,每个小问题的解决有相应确定的步骤,这就提醒我们可设计一个算法,借助计算机来求解这个问题的解Nmin.
下面将要解决该问题具体的求解步骤问题。
三、算法设计
如何用自然语言表示该问题的算法呢?可以考虑从特殊的正整数序列中筛选出符合要求的数。
第一步易实现确定最小的除3余2的正整数为2;第二步依次加3得出除3余2的一列数(通项式N=3K1+2,K1=0 1,2,…)2,5,8,11,14…,32,35,…,53,56,…;第三步在此列数中确定最小的除以5余3的正整数为8,正整数8既满足条件I,也满足条件II且是最小的符合要求的数,进而产生一个新的正整数数列,依次加15,得到8,23,38,53,…,即可证明满足条件I和条件II,因为
N=15K4+8,(K4=0,1,2,…)
=3×5K4+3×2+2
=3×(5K4+2)+2 (其中5K4+2为正整数)
满足条件I
N=15K4+8,(K4=0,1,2,……)
=5×3K4+5×1+3
=5×(3K4+1)+3(其中3K4+1为正整数)
满足条件II.
第四步从得到的一列数中找到满足条件III的最小正整数Nmin.这是我们要求的一个数。
在完成了上述步骤后,就找到了所求数53,这5个步骤称为解决“韩信点兵”问题的一个算法。能否在这个算法的基础上做一些优化,以便更简地获得结果呢?
四、优化方案
1.算理拟优化方案
“韩信点兵”问题的算理可从集合的角度去考虑,如附图(略).问题的实质是求对应三个集合的交集中的最小元素问题。该思路能很好的理解“韩信点兵”做法的数学实质。有兴趣的同学可从这方面作一些尝试,找是否有可行的算法,“韩信点兵”问题的算理也可从数列的角度加以考虑,即产生三个数列:
N=3K1+2 (K1=0,1,2,…)
2,5,8,11,14,…,53,…
N=5K2+3 (K2=0,1,2,…)
3,8,13,18,23,28,…,53,…
N=7K3+4 (K4=0,1,2,…)
4,11,18,25,32,…,53,…
从这三个数列中找最小的相同项,即得到53.
2.算法拟优化方案
由(N-2)(N-3)(N-4)=3×5×7K1K2K3知任意改变3,5,7因数的顺序,上面式子不变,因而任取3,5,7的一个排列,就产生类似于上面算法的一个算法,比如,按由大到小即7,5,3步骤也可实现(见教材第89页算法),可见由教材的算理可以有类似的6个元素的全排列种算法。但从本质上说并未真正地优化了算法。但却丰富了该问题的算法。优化算法的思想意识任何时候都应该有。
五、引思启示
(1)“韩信点兵”问题的符合要求的最小正整数53已得到。若要再问还有没有符合要求的其它数?若有第二个数应该是多少?能否找到答案的一个通式来验证。通过“韩信点兵”问题从数学角度加以分析,很快可以得到下面的一个公式,即N=3×5×7K5+53(K5=0,1,2,…),该公式是满足条件I,II,III的通解。可仿上面类似证明。这也说明了用韩信的方法点兵得到的士兵人数是些正整数的集合,因而一个答案是求至少有多少个士兵。从这个例子的分析再次说明了算法是解决某类问题的一系列具体步骤或子程序,只要按这些步骤执行,就能使问题得到解决。
(2)对任何一个数学问题用算法解决都存在一个优化算法的步骤在内。针对某一具体问题的算法,可以通过交流思考,从中去粗取优,存精取巧,做求优求简的改进。寻求新的算法,掌握较成熟的少数算法,将是利用计算机解决问题所需不懈努力的目标。通过例子进一步体会算法的基本思想,体会到一个问题的解决可能存在多种算法,有优劣之分。深切地感受到算法思想在解决一些问题时的优越性、工具性。
杨宏联2019年7月28日该文章发表于《中学数学教学参考》2007年第10期下旬刊
说明:
2007年新版高中数学教材还未试行,那时才开始全员培训高中教师,2007年8月初在宝鸡培训结束后在那个暑假里用一个下午立即写的论文《“韩信点兵”问题的教学设计》,与之相关的各种数学教辅资料还没有出现呢!写论文也是出于当时评审中学数学一级教师的需要。
杨宏联2019年7月31日 https://t.cn/A6PQ6kIC
#九州新酷游#
国际米兰的阿根廷前锋劳塔罗·马丁内斯已成为欧洲大型俱乐部追随者最多的球员 之一。劳塔罗·马丁内斯在国际米兰取的了成功使许多俱乐部都对这位阿根廷人产生了兴趣。巴塞罗那将马丁内斯列为明年2020年夏季市场的 第一大目标, 而且他们似乎处于有利地位。
劳塔罗·马丁内斯视乎已经放弃了曼城和曼联的报价,自己更愿意与梅西在一起,并成为路易斯·苏亚雷斯的继任者。
#滚球推荐# #滚球# #足球初盘# #足球滚球推荐# #足球初盘推荐#
国际米兰的阿根廷前锋劳塔罗·马丁内斯已成为欧洲大型俱乐部追随者最多的球员 之一。劳塔罗·马丁内斯在国际米兰取的了成功使许多俱乐部都对这位阿根廷人产生了兴趣。巴塞罗那将马丁内斯列为明年2020年夏季市场的 第一大目标, 而且他们似乎处于有利地位。
劳塔罗·马丁内斯视乎已经放弃了曼城和曼联的报价,自己更愿意与梅西在一起,并成为路易斯·苏亚雷斯的继任者。
#滚球推荐# #滚球# #足球初盘# #足球滚球推荐# #足球初盘推荐#
#巾凡的一生##Sakura-嵐[音乐]#
火车上抄笔记。
#春雪-(日)三岛由纪夫[图书]#
1-4章
“我今天提着妃殿下的裙摆时,绊了一下,妃殿下只微微一笑,宽恕了我。”
这时候清显想说什么呢?假如硬要做出说明,那么他想说,他对任何事情都不感兴趣。
他就是一根优雅的刺。而且清显十分清楚,自己这颗讨厌马虎,喜欢洗练的心,实际上是徒劳的,像一棵无根的草。这英俊少年想到的是,他想腐蚀而未腐蚀,想侵犯而未侵犯。对这家族来说,他的毒素毫无意义的确是一种毒,然而这是一种完全无益的毒。从某种意义上说,这种无益就是自己诞生的意义。
他刚剪短了头发,丽日柔光洒落在他那细嫩的脖颈上。这是一个寂静的、无事的、奢侈的星期天。尽管如此,清显依然觉得,在这个像灌满水的皮带一般的世界的底层,开了一个小小的洞,它仿佛听见“时间”的水滴从那里一滴一滴落下的声音。
“你一定野心很大,有野心的人总是显出悲伤的样子。你究竟还想要什么呢?”
“要一件有决定意义的东西。可那是什么东西,我也不清楚。”
清显有个不好的倾向,那就是他轻蔑爱慕自己的人,岂止轻蔑,甚至近于冷酷。
母亲对肉眼看不见的东西是无法理解的,她对自己的这种心性并不觉得不好意思。清显却觉得这是母亲唯一的优点。这样一位母亲,有心聆听佛法宣讲,其志可嘉,却也未免滑稽可笑。
聪子漫不经心地弯腰摘花,她那浅蓝色和服的下摆略微叉开,使她的腰身显得丰满,这和她那苗条的身躯很不相称。清显觉得自己那透明的、孤独的脑海微微地浑浊了,就像把沉积在水里的沙子都搅得掀动起来一样,这使他多少感到有点厌恶。
火车上抄笔记。
#春雪-(日)三岛由纪夫[图书]#
1-4章
“我今天提着妃殿下的裙摆时,绊了一下,妃殿下只微微一笑,宽恕了我。”
这时候清显想说什么呢?假如硬要做出说明,那么他想说,他对任何事情都不感兴趣。
他就是一根优雅的刺。而且清显十分清楚,自己这颗讨厌马虎,喜欢洗练的心,实际上是徒劳的,像一棵无根的草。这英俊少年想到的是,他想腐蚀而未腐蚀,想侵犯而未侵犯。对这家族来说,他的毒素毫无意义的确是一种毒,然而这是一种完全无益的毒。从某种意义上说,这种无益就是自己诞生的意义。
他刚剪短了头发,丽日柔光洒落在他那细嫩的脖颈上。这是一个寂静的、无事的、奢侈的星期天。尽管如此,清显依然觉得,在这个像灌满水的皮带一般的世界的底层,开了一个小小的洞,它仿佛听见“时间”的水滴从那里一滴一滴落下的声音。
“你一定野心很大,有野心的人总是显出悲伤的样子。你究竟还想要什么呢?”
“要一件有决定意义的东西。可那是什么东西,我也不清楚。”
清显有个不好的倾向,那就是他轻蔑爱慕自己的人,岂止轻蔑,甚至近于冷酷。
母亲对肉眼看不见的东西是无法理解的,她对自己的这种心性并不觉得不好意思。清显却觉得这是母亲唯一的优点。这样一位母亲,有心聆听佛法宣讲,其志可嘉,却也未免滑稽可笑。
聪子漫不经心地弯腰摘花,她那浅蓝色和服的下摆略微叉开,使她的腰身显得丰满,这和她那苗条的身躯很不相称。清显觉得自己那透明的、孤独的脑海微微地浑浊了,就像把沉积在水里的沙子都搅得掀动起来一样,这使他多少感到有点厌恶。
✋热门推荐