最新计算机第10章程序设计基础讲述课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《最新计算机第10章程序设计基础讲述课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 计算机 10 章程 设计 基础 讲述 课件
- 资源描述:
-
1、1第第10章章 程序设计基础程序设计基础10.1 程序设计的概念程序设计的概念10.2 算法算法10.3 程序设计语言程序设计语言10.4 程序设计方法程序设计方法210.1 程序设计的概念程序设计的概念v程序:是解题方法和步骤的描述,是供计算机执行程序:是解题方法和步骤的描述,是供计算机执行并能完成特定功能的指令序列。并能完成特定功能的指令序列。v程序的核心:数据结构和算法。程序的核心:数据结构和算法。v程序设计(程序设计(Programming):先对问题进行分析并):先对问题进行分析并建立数学模型,然后考虑数据的组织方式和算法,建立数学模型,然后考虑数据的组织方式和算法,并用某一种程序设
2、计语言编写程序,最后调试程序,并用某一种程序设计语言编写程序,最后调试程序,使之运行后能产生预期的结果。使之运行后能产生预期的结果。3v程序设计的基本步骤:程序设计的基本步骤:(1)分析问题,确定数学模型或方法。分析问题,确定数学模型或方法。(2)设计算法,画出流程图。设计算法,画出流程图。(3)选择编程工具,按算法编写程序。选择编程工具,按算法编写程序。(4)调试程序,分析输出结果。调试程序,分析输出结果。4 10.2 算算 法法 10.2.1 算法的概念算法的概念计算机解决问题的方法和步骤,就是计算机解题计算机解决问题的方法和步骤,就是计算机解题的算法的算法(Algorithm)。算法举例
3、:算法举例:(1)将两个变量的值互换将两个变量的值互换。(2)欧几里德()欧几里德(Euclid)算法求两个正整数)算法求两个正整数m和和n的最大公约数。的最大公约数。(3)非数值计算算法:有)非数值计算算法:有9枚铜币,其中有枚铜币,其中有1枚略枚略轻的是假币,用一台没有砝码的天平将假币找出轻的是假币,用一台没有砝码的天平将假币找出来,应怎样找称来,应怎样找称。510.2.2 算法的特性算法的特性(1)有穷性。算法中执行的步骤总是有限次数的,不有穷性。算法中执行的步骤总是有限次数的,不能无止境地执行下去。能无止境地执行下去。(2)确定性。算法中的每一步操作必须具有确切的含确定性。算法中的每一
4、步操作必须具有确切的含义,不能有二义性。义,不能有二义性。(3)有效性。算法中的每一步操作必须是可执行的。有效性。算法中的每一步操作必须是可执行的。(4)要有数据输入。算法中操作的对象是数据,因此要有数据输入。算法中操作的对象是数据,因此应提供有关数据。应提供有关数据。(5)要有结果输出。要有结果输出。610.2.3 算法的评价算法的评价1算法评价标准算法评价标准(1)正确性。)正确性。(2)可读性。)可读性。(3)通用性。)通用性。(4)高效率。)高效率。2.算法效率的度量算法效率的度量(1)时间度量)时间度量(2)空间度量)空间度量710.2.4 算法的描述算法的描述1.用传统的流程图描述
5、算法用传统的流程图描述算法传统的流程图是用一些几何框图、传统的流程图是用一些几何框图、流程线和文字说明表示各种类型流程线和文字说明表示各种类型的操作。一般用矩形框表示进行的操作。一般用矩形框表示进行某种处理,有一个入口,一个出某种处理,有一个入口,一个出口。用菱形框表示判断,有一个口。用菱形框表示判断,有一个入口,两个出口。在框内写上简入口,两个出口。在框内写上简明的文字或符号表示具体的操作,明的文字或符号表示具体的操作,用带箭头的流向线表示操作的先用带箭头的流向线表示操作的先后顺序。后顺序。8 2.用结构化流程图描述算法用结构化流程图描述算法(1)程序的三种基本结构:顺序结)程序的三种基本结
6、构:顺序结构、选择结构和循环结构。构、选择结构和循环结构。(2)结构化流程图()结构化流程图(N-S图)图)93用伪代码描述算法用伪代码描述算法计算计算2+4+100并输出,设计算法并用并输出,设计算法并用Visual Basic伪代码描述如下:伪代码描述如下:0sum1iDo While i100 If i/2的余数为的余数为0 THEN sum+isum i+1iLoopPrint sum 1010.2.5 算法示例算法示例1迭代算法迭代算法 迭代是一种建立在循环基础上的算法。在数学中,迭代是一种建立在循环基础上的算法。在数学中,迭代经常被用来进行数值计算,例如求方程的解,迭代经常被用来进
7、行数值计算,例如求方程的解,不断用变量原来的值递推求新的值的过程。不断用变量原来的值递推求新的值的过程。讨论求若干个数之和或乘积的问题。讨论求若干个数之和或乘积的问题。1110.2.5 算法示例算法示例1迭代算法迭代算法 迭代是一种建立在循环基础上的算法。在数学中,迭代是一种建立在循环基础上的算法。在数学中,迭代经常被用来进行数值计算,例如求方程的解,迭代经常被用来进行数值计算,例如求方程的解,不断用变量原来的值递推求新的值的过程。不断用变量原来的值递推求新的值的过程。讨论求若干个数之和或乘积的问题。讨论求若干个数之和或乘积的问题。122穷举算法穷举算法 穷举法也叫枚举法,它的基本思路是对众多
8、可能穷举法也叫枚举法,它的基本思路是对众多可能解,按某种顺序进行逐一枚举和检验,并从中找解,按某种顺序进行逐一枚举和检验,并从中找出那些符合要求的可能解,作为问题的解。穷举出那些符合要求的可能解,作为问题的解。穷举的计算量是相当大的,但对于计算机来说,做起的计算量是相当大的,但对于计算机来说,做起来很容易。穷举算法是一种重要的算法设计策略,来很容易。穷举算法是一种重要的算法设计策略,可以说是计算机解题的一大特点。可以说是计算机解题的一大特点。求方程求方程x+2y+5z=100的整数解。的整数解。133排序算法排序算法所谓排序,就是将一组数据元素按照某个关键字所谓排序,就是将一组数据元素按照某个
9、关键字递增或递减的次序排列起来。递增或递减的次序排列起来。(1)选择排序)选择排序(Selection Sort)选择排序法的实现过程是:首先找出表中关键字选择排序法的实现过程是:首先找出表中关键字最小的元素,将其与第一个元素进行交换,然后,最小的元素,将其与第一个元素进行交换,然后,再在其余元素中找出关键字最小的元素,将其与再在其余元素中找出关键字最小的元素,将其与第二个元素进行交换。依次类推,直到将表中所第二个元素进行交换。依次类推,直到将表中所有关键字按由小到大的顺序排列好为止。有关键字按由小到大的顺序排列好为止。14(2)冒泡排序)冒泡排序(Bubble Sort)冒泡法排序法是每趟将
10、相邻的两个数两两进行比冒泡法排序法是每趟将相邻的两个数两两进行比较,若满足升序次序,则进行下一次比较,若不较,若满足升序次序,则进行下一次比较,若不满足升序次序,则交换这两个数,直到最后。总满足升序次序,则交换这两个数,直到最后。总的比较次数为的比较次数为n-1次,此时最后的元素为最大数,次,此时最后的元素为最大数,此为一趟排序。接着进行第二趟排序,方法同前,此为一趟排序。接着进行第二趟排序,方法同前,只是这次最后一个元素不再参与比较,比较次数只是这次最后一个元素不再参与比较,比较次数为为n-2次,依次类推。次,依次类推。15 4查找算法查找算法查找是根据给定的某个值,在查找表中确定一个查找是
11、根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素,若表中存在这其关键字等于给定值的数据元素,若表中存在这样的数据元素,称此查找是成功的。若表中不存样的数据元素,称此查找是成功的。若表中不存在关键字等于给定值的数据元素,称此查找是不在关键字等于给定值的数据元素,称此查找是不成功的。成功的。(1)顺序查找)顺序查找顺序查找是最常用的查找方法,其查找过程为:顺序查找是最常用的查找方法,其查找过程为:从第一个元素起,逐个将给定值与数据元素的关从第一个元素起,逐个将给定值与数据元素的关键字进行比较,若某个元素的关键字与给定值相键字进行比较,若某个元素的关键字与给定值相等,则认为查找是成功
展开阅读全文