程序设计灵魂算法概要.pptx
《程序设计灵魂算法概要.pptx》由会员分享,可在线阅读,更多相关《程序设计灵魂算法概要.pptx(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、主要内容主要内容算法的概念简单算法举例算法的特点算法的表示方法第1页/共32页程序设计包括两个方面内容:1.对数据的描述(数据结构)数据的类型数据的组织形式 2.对操作的描述(算法)程序程序=算法算法+数据结构数据结构+程序设计方法程序设计方法+语言工具和环境语言工具和环境 在设计一个程序时,要综合运用这几方面的知识。在设计一个程序时,要综合运用这几方面的知识。算法是灵魂,数据结构是加工对象,语言是工具。算法是灵魂,数据结构是加工对象,语言是工具。计算机科学家沃思(Nikiklaus Wirth)公式:数据结构数据结构+算法算法=程序程序第2页/共32页做任何事情都用一定的步骤,例如炒菜有以下
2、做任何事情都用一定的步骤,例如炒菜有以下几个步骤几个步骤:2 2.1.1算法的概念算法的概念第3页/共32页2 2.1.1算法的概念算法的概念 为解决一个问题而采取的方法和步骤,就为解决一个问题而采取的方法和步骤,就称为算法。称为算法。大学新生报到太极拳图解 计算机算法可分为:计算机算法可分为:数值运算算法、非数值运数值运算算法、非数值运算算法。算算法。数值运算数值运算 :求数值解;求数值解;非数值运算:非数值运算:常用于事务管理领域,如图书常用于事务管理领域,如图书检索、人事管理、行车调度管理等。检索、人事管理、行车调度管理等。第4页/共32页 什么是程序设计?为计算机编写程序的过程。为计算
3、机编写程序的过程。程序设计最主要的工作就是程序设计最主要的工作就是算法设计算法设计。什么是程序设计语言?在程序设计过程中,用于编写程序的语言在程序设计过程中,用于编写程序的语言。问题定义问题定义总体总体/详细设计详细设计编程编程运行运行编写C语言程序的大体步骤:2 2.1.1算法的概念算法的概念第5页/共32页例:设计用算法实现 S=1+2+3+100算法1:开辟一存储单元 S 用S存放累加和 1、将累加单元 S 清零 2、把1加到 S 中 3、把2加入到S 中 100、把100加到 S 中 101、输出 S 中的结果 算法2:开辟一个累加单元 S,再开辟一个记数单元 iS1:将累加单元 S
4、清零S2:将记数单元 i 置一S3:将 i 加到 S 中S4:记数单元 i 的值增一S5:如果 i 的值等于100则执行下一步,否则转到第 S3S6:输出 S 的值2.2 算法举例第6页/共32页2.3 2.3 算法的特性算法的特性一个算法应当具有五大特性一个算法应当具有五大特性:1 1、有穷性、有穷性:算法包含的操作步骤有限算法包含的操作步骤有限2 2、确定性、确定性:算法每一步的操作步骤都是确定的,不能模棱两可算法每一步的操作步骤都是确定的,不能模棱两可3 3、有零个或多个输入有零个或多个输入:在执行算法时从外界取得必要的信息在执行算法时从外界取得必要的信息4 4、有一个或多个输出:、有一
5、个或多个输出:即算法的求解即算法的求解5 5、有效性:、有效性:算法中每一个步骤都应当能有效执行算法中每一个步骤都应当能有效执行第7页/共32页1、自然语言描述法:3、伪码方法:2、图示法:(2)算法结构图(N-S 图)(1)算法流程图2.4 算法的表示方法4、计算机语言第8页/共32页2.4 2.4 算法的表示方法算法的表示方法1、自然语言描述法:自然语言就是人们日常使用的语言,可以是汉语或英语或其它语言。用自然语言表示通俗易懂,但文字冗长,容易出现“歧义性”。Q:将分别装有醋(A杯)和酱油(B杯)的两个杯子里面的内容交换。分析:借用第三个杯子(空杯)第9页/共32页(1)算法流程图采用具有
6、特定含义的图框和流线表示算法 直观形象,易于理解2、图示法:2.4 算法的表示方法起止框:起止框:算法的开始和结束算法的开始和结束一般处理框:一般处理框:表示赋值、加减等操作表示赋值、加减等操作判断框:判断框:根据给定的条件决定执行几根据给定的条件决定执行几条路径中的某一条路径条路径中的某一条路径输入输出框:输入输出框:表示输入输出操作表示输入输出操作流程线:流程线:表明程序流程的方向表明程序流程的方向第10页/共32页结构化程序设计的三种基本结构结构化程序设计的三种基本结构:顺序、选择和循环顺序、选择和循环 顺序结构(1)算法流程图Q:键盘输入两个数x1和x2,要求交换后实现输出。开始x1,
7、x2Temp=x1X1=x2X2=Tempx1,x2结束开始输入x1,x2Temp=x1x1=x2x2=Tempx1,x2结束第11页/共32页选择结构(1)算法流程图Q:键盘输入任意数并输出其平方根。开始X1X1=0Y1=sqrt(x1)Y1结束NY开始x1x1=0Y1=sqrt(x1)Y1结束NY第12页/共32页当型(While型)循环结构 直到型(Until型)循环(1)算法流程图第13页/共32页例例1:1:将求将求5!5!的算法用流程图表示的算法用流程图表示算法:s1:使t=1 s2:使i=2 s3:使t*i,乘积仍放在变量t中。s4:使i的值加1 s5:如果i不大于5,返回重新执
8、行步骤3以及其后的步骤4和5,否则算法结束。最后得到的t值就是5!5!的值。的值。第14页/共32页 例例2:2:对一个大于或等于对一个大于或等于3 3的正整数,判断它是否是一个素数的正整数,判断它是否是一个素数。分析:分析:判断一个数n(n3)是否素数的方法:将n作为被除数,将2到(n-1)各个整数轮流作为除数,如果都不能被整除,则n为素数。概念:概念:所谓素数,是指除了1和该数本身之外,不能被其它任何整数整除的数。例如,13是素数。因为它不能被2,3,4,12整除。第15页/共32页算法描述:S1S1:输入:输入n n的值的值S2S2:i=2 i=2(i i作为除数)作为除数)S3S3:n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 灵魂 算法 概要
限制150内