内容正文:
用计算机程序解决问题
——剖析用计算机解决问题的过程
剖析用计算机解决问题的基本过程
分析问题
编写程序
设计算法
调试程序
检测结果
新课引入----韩信点兵
韩信是我国西汉初著名的军事家,刘邦得天下,军事上全依靠他。韩信点兵,多多益善,不仅如此,还能经常以少胜多,以弱胜强。在与楚军决战时韩信指挥诸侯联军,在垓下十面埋伏,击败楚军,楚霸王项羽因此自杀。
韩信说:“如果每3个人编为一队,那最后剩下1个人;如果每5个人编为一队,那最后剩下2个人;如果每7个人编为一队,最后剩下4个人。请你自己算一下,我有多少士兵?”(假设士兵总数不超过100人)
“韩信点兵”问题1:求整除3余1、整除5余2、整除7余4的最小自然数。
*
分析问题
对于任何一个实际问题,首先要分析该问题的需求情况及已知条件,来判断解决问题的可能性和目标要求,然后对需要解决的问题给出一个精确的描述。
设所求的数为X ,
则X应满足:
X整除3余1
X整除5余2
X整除7余4
分析问题和解题步骤
算法:解决问题的方法与步骤。每一步都必须是确定的、能行的、不能有二义性。
穷举法就是通过把需要解决问题的所有可能情况逐一试验来找出符合条件的解的方法 ,是效率最低的一种算法,优点是思路简单,编程容易。
设所求的数为X ,
则X应满足:
X整除3余1
X整除5余2
X整除7余4
1、令X为1
2、如果X整除3余1,X整除5余2,X整除7余4,这就是题目要求的数,则记下这个X
3、令X为X+1(为算下一个作准备)
4、如果算出,则结束;否则跳转2
5、写出答案
分析问题(找出已知和未知、列出已知和未知之间的关系) 写出解题步骤
穷举法
*
流程图
开始
X=1,Y=0
X整除3余1
X整除5余2
X整除5余2
Y=X
输出Y
结束
X=X+1
Y
Y
Y
N
N
N
编写程序
有了清晰的可操作的算法描述,就可以选择一种程序设计语言来编写程序,以实现算法。一般来说,只要算法确定,语言的选择就没有特别的限定,通常根据问题的特性和编程人员对语言的熟悉程度来选定。程序设计语言是人们编程时与计算机沟通的桥梁,熟悉了程序设计语言就可以更好地把算法转换为程序,让计算机执行程序来帮助人们解决问题。
Private Sub Command1_Click()