《算法与程序框图-算法的含义.ppt》由会员分享,可在线阅读,更多相关《算法与程序框图-算法的含义.ppt(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、算法的含义算法的含义你知道在家里烧开水的基本过程吗?你知道在家里烧开水的基本过程吗?两个大人和两个小孩一起渡河,渡口只有两个大人和两个小孩一起渡河,渡口只有一条小船,每次只能渡一条小船,每次只能渡1 个大人或两个小个大人或两个小孩,他们四人都会划船,但都不会游泳。孩,他们四人都会划船,但都不会游泳。试问他们怎样渡过河去?试问他们怎样渡过河去?请写出一个渡河方案。请写出一个渡河方案。广义地说:为了解决某一问题而采取的方广义地说:为了解决某一问题而采取的方法和步骤,就称之为算法。法和步骤,就称之为算法。一般而言,一般而言,对一类问题的机械的、统一的求解方法称为算法。数学史介绍20 世纪最伟大的科学
2、技术发明世纪最伟大的科学技术发明-计算机计算机计算机是对人脑的模拟,它强化了人的思维智能;计算机是对人脑的模拟,它强化了人的思维智能;没有软件的支持,超级计算机只是一堆废铁而已;没有软件的支持,超级计算机只是一堆废铁而已;软件的核心就是算法软件的核心就是算法软件的核心就是算法软件的核心就是算法 !算法的研究和应用正是本课程的主题算法的研究和应用正是本课程的主题算法的研究和应用正是本课程的主题算法的研究和应用正是本课程的主题 !现代科学研究的三大支柱理论研究科学实验科学计算科学计算解题过程广播操图解是广播操的算法;广播操图解是广播操的算法;菜谱是做菜的算法;菜谱是做菜的算法;歌谱是一首歌曲的算法
3、;歌谱是一首歌曲的算法;空调说明书是空调使用的算法等空调说明书是空调使用的算法等2121世纪信息社会的两个主要特征:世纪信息社会的两个主要特征:“计算机无处不在计算机无处不在”“数学无处不在数学无处不在”2121世纪信息社会对科技人才的要求:世纪信息社会对科技人才的要求:-会会“用数学用数学”解决实际问题解决实际问题-会用计算机进行科学计算会用计算机进行科学计算狭义算法狭义算法计算机能实现的算法计算机能实现的算法-一类问题一类问题的机械的、统一的求解方法。的机械的、统一的求解方法。如,解方程(组)的算法,函数求值如,解方程(组)的算法,函数求值算法,作图问题的算法,等等算法,作图问题的算法,等
4、等例例1:给出求:给出求1+2+3+4+5的一个算法的一个算法例例1 1给给出出求求的的一一个个算算法法;算法算法1 1 按照逐一相加的程序进行按照逐一相加的程序进行.第一步第一步 计算计算1+2,1+2,得到得到3;3;第二步第二步 将第一步中的运算结果将第一步中的运算结果3 3与与3 3相加相加,得到得到6 6第三步第三步 将第二步中的运算结果将第二步中的运算结果6 6与与4 4相加相加,得到得到10.10.第四步第四步 将第三步中的运算结果将第三步中的运算结果1010与与5 5相加相加,得到得到15.15.算法算法2 2 可以运用公式可以运用公式直接计算直接计算;第一步第一步 取取n=5
5、;n=5;第二步第二步 计算计算第三步第三步 输出运算结果输出运算结果算法算法3 3第一步第一步 让让 第二步第二步 将将 的值赋给的值赋给 的值增加的值增加1 1第三步第三步 如果如果 比比5 5大大,则输出则输出S,S,否则转否则转 第二步第二步.思考思考 能用能用算法算法3求求 1+3+5+99 吗?吗?例例2 2 给出求解方程组给出求解方程组 的一个算法;的一个算法;解解:我们用消元法求解这个方程组我们用消元法求解这个方程组,步骤是步骤是:第第一一步步:方方程程不不动动,将将方方程程中中x的的系系数数除除以以方方 程程中中x系系数数,得得到到乘乘数数第二步第二步:方程方程减去减去m乘以
6、方程乘以方程,消去方程消去方程中中 x项项,得到得到 第一步第一步:方程方程不动不动,将方程将方程中中x的系数除以方的系数除以方 程程中中x系数系数,得到乘数得到乘数第三步第三步:将上面的方程组自下而上回代求解将上面的方程组自下而上回代求解,得得 到到 这种消元回代的算法适用于一般线性这种消元回代的算法适用于一般线性方程组的求解方程组的求解.感悟感悟通过对以上几个问题的分析,我们对算法有通过对以上几个问题的分析,我们对算法有了一个初步的了解了一个初步的了解.在解决某些问题时,需要设在解决某些问题时,需要设计出一系列可操作或可计算的步骤,通过实施这计出一系列可操作或可计算的步骤,通过实施这些步骤
7、来解决问题,通常把这些步骤称为解决这些步骤来解决问题,通常把这些步骤称为解决这些问题的算法些问题的算法.在数学中,现代意义上的在数学中,现代意义上的“算法算法”通常是指通常是指可以用计算机来解决的某一类问题的程序或步骤可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成够在有限步之内完成.算法的特性有穷性:一个算法的步骤序列是有限的,它应在有限有穷性:一个算法的步骤序列是有限的,它应在有限步操作之后停止,而不能是无限地执行下去。步操作之后停止,而不能是无限地执行下去。确定性:算法中的每一步应该是确定的并
8、且能有效地确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可的。执行且得到确定的结果,而不应当是模棱两可的。逻辑性:算法从初始步骤开始,分为若干个明确的步逻辑性:算法从初始步骤开始,分为若干个明确的步骤,前一步是后一步的前提,只有执行完前一步才能进骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题。行下一步,并且每一步都准确无误,才能完成问题。不唯一性:求解某一个问题的算法不一定只有唯一的不唯一性:求解某一个问题的算法不一定只有唯一的一个,可以有不同的算法。一个,可以有不同的算法。普遍性:很多具体的问题,都可以设计合
9、理的算法去普遍性:很多具体的问题,都可以设计合理的算法去解决,如心算、计算器计算都要经过有限的、事先设计解决,如心算、计算器计算都要经过有限的、事先设计好的步骤加以解决。好的步骤加以解决。练习练习例例3:写出求:写出求12345的算法的算法 例例4:写出一个求整数:写出一个求整数a、b、c最大值的算法最大值的算法回顾反思 1、算法的定义、算法的定义:算法算法可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤。或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题。2、算法的五大特征:、算法的五大特征:逻辑性:逻辑性:算法应具有正确性和顺序性。算法从初算法应具
10、有正确性和顺序性。算法从初始步骤开始,分为若干明确的步骤,前一步是后一始步骤开始,分为若干明确的步骤,前一步是后一步的基础,只有执行完前一步才能进行下一步,并步的基础,只有执行完前一步才能进行下一步,并且每一步都有确切的含义,组成了具有很强的逻辑且每一步都有确切的含义,组成了具有很强的逻辑性的序列。性的序列。概括性:概括性:算法必须能解决一类问题,并且能重复算法必须能解决一类问题,并且能重复使用。使用。有限性:有限性:一个算法必须保证执行有限步后结束一个算法必须保证执行有限步后结束非唯一性:求解某个问题的算法不一定是唯一的,非唯一性:求解某个问题的算法不一定是唯一的,对于一个问题可以有不同的算法。对于一个问题可以有不同的算法。普遍性:普遍性:许多的问题可以设计合理的算法去解决。许多的问题可以设计合理的算法去解决。如:如用二分法求方程的近似零点,求几何体的体如:如用二分法求方程的近似零点,求几何体的体积等等。积等等。3、算法的表述形式:、算法的表述形式:用日常语言和数学语言或借助于形式用日常语言和数学语言或借助于形式语言(算法语言)各处精确的说明。语言(算法语言)各处精确的说明。程序框图(简称框图)。程序框图(简称框图)。程序语言。程序语言。