算法与程序设计课件3.ppt
《算法与程序设计课件3.ppt》由会员分享,可在线阅读,更多相关《算法与程序设计课件3.ppt(99页珍藏版)》请在课桌文档上搜索。
1、算法与程序设计,第一章 算法和算法的表示,算法的概念,1、算法的概念 所谓“算法”,就是解题方法的精确描述。“算法”是用来表示解决问题的方法和步骤,它是由有限个步骤组成的。从更广义的角度来看,并不是只有“计算”的问题才有算法。,乐谱,菜谱,广播操图解,2.算法实例,华罗庚在数学普及读物统筹方法平话及补充中,以“泡茶”为例,阐明了设计和选择合适的、优化的算法的重要性。,算法的特性,1.有穷性 例:1+2+3+4+n2.确定性 例:L/正整数3.有0个或多个输入4.有一个或多个输出5.有效性 例:(l+d)/4,算法的表示,自然语言、伪代码、流程图,自然语言:就是指人们日常使用的语言,可以是汉语、
2、英语或其它语言。伪代码:是用介于自然语言和计算机语言之间的文字和符号(包括数学符号)来描述算法。,例如:输入三个数,然后输出其中最大的数可用如下的伪代码表示Begin(算法开始)输入 A,B,C IF AB 则 AMax 否则 BMax IF CMax 则 CMaxPrint MaxEnd(算法结束),处理框,开始、结束框,输入、输出框,判断框,流程线,连接点,流程图中的基本符号,开始框,输入变量A、B和C,AB?,Max B,Max A,CMax?,Y,N,Max C,N,输出变量C的值,结束框,Y,算法的三种基本模式,(1)顺序结构,语句1,语句2,条件,语句1,语句2,Y,N,(2)选择
3、结构,条件,(a),条件,语句组,(3)循环结构,a)当型循环,b)直到循环,Y,N,Y,N,(b),语句组,1、计算圆锥体体积的步骤有:计算底面积s=pir2 输入底面半径r、高h 输出体积v pi=3.1416 计算体积v=sh/3下列选项中,步骤顺序正确的是(A)(B)(C)(D),A,巩固练习,2、下面结论正确的是()A.一个程序的算法步骤是可逆的。B.一个算法可以无止境地运行下去。C.完成一件事情的算法有且只有一种。D.算法的每一步操作必须是明确的,不能有歧异或模糊。E.算法执行后一定产生确定的结果。,D E,3、下面是解决问题的算法的是()A.打开计算机需先插好电源,再打开显示器,
4、打开主机。B.斜二测画法需将平行于x轴的长度保持不变,平行于y轴的长度变为原来的一半。C.求方程012=x的解先移项。D.建国60周年庆典。,A,算法是方法与步骤,而B与D仅陈述事件,而C虽然是步骤,但并不能达到目的,也不是解这个方程的算法。,4、在求解“一元二次方程实数根”的算法中,如果方程不存在实数解,也要求输出结果“无实数根”。此要求主要体现了算法特征中的()A 有穷性B 有输出C 确定性D唯一性,B,5、某停车场收费标准如下:1小时及以内,收费 5元;超过1小时的,超过部分每小时按15元 收费。用算法描述这一收费标准,合适的算 法流程是(A)顺序模式(B)循环模式(C)选择模式(D)树
5、型模式,C,6、某算法的流程图如下所示:,依次输入x的值为5、3、0后,该算法的输出结果为(A)2(B)3(C)5(D)8,D,7、某算法的自然语言描述与流程图表示分别如下:自然语言 流程图,第1步:输入一个实数x第2步:判断x与0的大小关系,若x0,则y=x2-1,否则y=2x-1第3步:输出y第4步:结束,N,Y,开始,x 0?,输出y,结束,输入x,则流程图中空白处理框和处应填入的是(A)y x2 1 x 2x 1(B)y x2 1 y 2x 1(C)y 2x 1 y x2 1(D)x x2 1 y 2x 1,B,第二节课,上节知识回顾,开始,i=10,Y,i=1 s=0,N,结束,输出
6、S,i=i+1 S=s+1,1、以上流程图属于()结构,2、此流程图属于什么结构?请描述该流程图的含义?,提示:1、“”表示给于 2、temp、a、b表示变量,3、假如你是电费收费员,现在需要向某位住户收取电费,以下是一个有关电费收费问题的流程图,请解释一下收费规则?并说明此图属于什么结构?,4:以下程序,当输入a,b,c的值分别为10,20,30时,输出结果为多少?该流程图完成了什么功能?,.某算法的流程图如下所示:,开始,结束,输出c,输出b,cb?,N,Y,输入a、b的值,ca+5,当输入a和b的值分别为3、6时,该算法的输出结果为,.某旅游景点规定,身高在1.2米以下的儿童免票,身高在
7、1.2米1.5米的儿童购买半价票,身高超过1.5米的购全价票。下图所示算法用于根据身高判断购票情况:,用于输出“购全价票”的图框编号是,D,练习5、当输入n的值为5时,输出s的值为多少?该流程图完成的什么功能?,1*1*2*3*4*5=120,1*2*3*4*5*6=720,第二章 算法实例,本章通过求解几个应用问题实例,介绍几种常用的算法设计方法,如:(1)用枚举和解析方法设计算法(2)在排序和查找中常用的几种简单算法,排序,冒泡排序,选择排序,查找,顺序查找,对分查找,一、枚举算法,枚举算法就是把各种可能情况都考虑到,并对全部可能结果逐一进行判断,过滤掉那些不符合要求的,保留符合要求的结果
8、。,算法分析:,(1)在这个5位的模糊处,依次填入00、01、0299这100个数,从而产生出全部可能解25006、25016、25026 25996;(2)使用循环结构模式,让变量j依次取0到99,那么25006+j*10就是一个可能解(用变量n表示);(3)对任一可能解n,判断是否能被37或67整除,若是就是一个真正解。,流程图:,二、解析算法,解析算法是指用解析的方法找出表示问题的前提条件与所求结果之间关系的数学表达式,并通过表达式的计算来实现问题求解。,流程图:设R为总电阻 r为输入的电阻值,三、排序,把杂乱无章的数据变为有充的数据,这一过程即称为排序。是计算机程序中经常要用到的基本算
9、法。,(1)冒泡排序:在一列数据中把较小(较大)的数据逐次向上推移的一种排序技术。,例:将27、36、32、18用冒泡法从小到大排序,第一遍:,第二遍:,第二遍:,例1、某烹饪比赛中,位专家评委给某厨师的打分分别是,。采用冒泡排序算法对其进行排序,若完成第一遍时的结果为:,则完成第二遍时的结果是,(A),(B),(C),(D),,A,例2、某书店在5所学校流动售书量(单位:本)分别是88,110,48,64,35。采用冒泡排序对其进行排序,若完成第一遍时的结果是:35,88,110,48,64,则完成第二遍时的结果是(A)35,88,110,48,64(B)35,48,88,64,110(C)
10、35,48,88,110,64(D)35,48,64,88,110,(2)选择排序算法:是对冒泡排序的改进。这种方法是在参加排序数组的所有元素中找出最小(或最大)的元素,使它与第一个元素中的数据相互交换位置,然在余下的元素中找出最小(或最大)的,与第二个元素中的数据交换位置,以此类推,直到所有元素成为一个有序的序列。,如上例:将27、36、32、18用选择排序算法从小到大排序,例、用选择排序算法对一组学生的身高数据进行升序排序,已知第一遍排序结束后的数据序列为165,168,178,175,171,则下列选项中可能性是原始数据序列的是()(A)175,178,168,165,171(B)178
11、,168,165,175,171(C)165,178,168,175,171(D)165,168,171,175,178,B,四、查找,(1)顺序查找,(2)对分查找:非常高效,但被查找的数据必须是有序,例:以下16个数据中,以对分法查找35的过程:,12345678910111213141516,12345678910111213141516,12345678910111213141516,12345678910111213141516,(1),(2),(3),(4),标号 数字,标号 数字,标号 数字,标号 数字,例、7位学生的身高(单位:cm)从高到低依次为:178,177,175,17
12、2,170,165,162。用对分查找法找到178所需要的查找次数是(A)1(B)2(C)3(D)4,C,巩固练习:,1、统计个位数是6,且能被三整除的三位数共有多少个,可采用的算法是()(A)查找算法(B)枚举算法(C)解析算法(D)排序算法,B,2计算两个并联电阻总电阻值的算法如下:输入两电阻R1、R2 的值计算总电阻R=,输出总电阻R 上述算法属于,3.7位学生的身高(单位:cm)从高到低依次为:178,177,175,172,170,165,162。用对分查找法找到178所需要的查找次数是,(D)4,(C)3,(B)2,(A)1,4、使用选择排序的方法对数据8,6,1,9,4从大到小排
13、序,需要进行数据互换的次数是(A)5(B)2(C)3(D)4,D,5、在有序单词序列:As、Book、Door、English、Floyd、Good、Hello、Sun中,用对分查找法找到单词“Good”所需要的查找次数是(A)1(B)2(C)3(D)4,B,6、利用对分查找,在某校报名参加学生会主席竞选的学号列表20080101,20080135,20080238,20080342,20080450,20080558,20080633,20080708,20080846,20080910中,查找学号为20080846学生的过程中,依次被访问到的学号是(),(A)20080450,200807
14、08,20080846(B)20080450,20080708,20080910,20080846(C)20080558,20080708,20080846(D)20080558,20080708,20080910,20080846,7、某书店第30周每天图书的销售量(单位:册)存放在数组d中,如下表所示:,若采用冒泡排序算法对这些数据进行升序排列,那么在完成第一遍的加工时,变量d(1)、d(7)的值分别为A 122 502B 201 618C 98 618D 98 502,6、小明在一次商品竞猜游戏中,采用了对分查找的算法进行猜价。当主办方出示了一件元以内的商品后,小明第次猜价时猜中了商品。
15、该商品的价格可能性是,(A)(B)(C)(D),7、某查找算法的流程图如左下列对该流程图的分析,正确的是:(A)采用顺序查找算法在数组a中查找20,找到则输出“20”(B)采用对分查找算法在数组a中查找20,找到则输出“Y”(C)若数组a中存在20,则查找次数一定小于10(D)若数组a中不存在20,则查找次数一定为10,第三节课,第三章 VB程序设计初步,一、基本数据类型、常量和变量,1、数据类型,2、常量,是指在程序执行过程中其值不能改变的存储单元或数据。,例:下面各种不同类型的常量整数常量:12 1024实数常量:3.1416-0.25字符串常量:Basic 0.618 逻辑常量:True
16、 Flase,常量在程序设计中用Const语句加以说明。,Const PI=3.14159,3、变量,是指在程序执行过程中其值可以改变的存储单元或数据。,变量名由字母、数字和下划线等字符组成,但必须以字母开头,在变量名中对大小写字母是不加区分的。,变量在程序设计中用Dim语句加以说明。,其常用格式为:Dim 变量名 As 变量的类型,例:Dim count As Integer count是整数类型的变量 Dim x As Double,y As Double x和y都是双精度实数类型的变量 Dim Name As String Name是字符串类型的变量,4、数组变量,主要用来存储一批同类型
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法 程序设计 课件

链接地址:https://www.desk33.com/p-259790.html