版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、认识算法 教学目标 1.通过对解决具体问题的过程和步骤的分析, 体会算法的基本思想,了解算法的含义。 2.学会使用流程图表示算法 重点难点 重点:算法的特点和描述方式 难点:将具体问题转换成算法 问题引入:一个农夫带着一条狼、一头山羊和一篮蔬菜过河,但只有一条 小船。乘船时,农夫只能带一样东西。当农夫在场的时候,这三样东西相 安无事,一旦农夫不在,狼会吃羊,羊会吃菜。请设计一个方案,使农夫 能安全的将这三样东西带过河 。 第一步:农夫带羊过河 第二步:农夫独自回来 第三步:农夫带狼过河 第四步:农夫带羊回来 第五步:农夫带菜过河 第六步:农夫独自回来 第七部:农夫带羊过河 算法的概念 为解决一
2、个问题而采取的方法和步骤,称为“算 法”(Algorithm)。或者说,算法是解题方法的 精确描述,解决一个问题的过程就是实现一个算 法的过程。 简单算法举例(1) 有两个杯子A和B,分别盛放酒和醋,要求将它们互 换(即A杯原来盛放酒,现要改盛醋,B杯则相反) 酒醋 A B 酒醋 A B 空 算法 必须增加一个空杯C作为过渡,其算法可以表示为: 步骤一:先将A杯中的酒倒在C杯中; 步骤二:再将B杯中的醋倒在A杯中; 步骤三:最后将C杯中的酒倒在B杯中; 上面的算法可以简化表示如下: AC BA CB 简单算法举例(2) 如何从十个数中挑选出最大的数? 思路:这个问题的解决思路可以用“打擂台”来
3、 比喻:先有任意一人在台上,然后第二个人与他 比武,胜者留在台上,如此继续下去,直到第十 个人比完为止(一共比次)?,最后留在台上 者为胜。 算法 先任选一数放在一个匣子A中; 将第二个数与A匣子中的数相比,大者放入A匣子中; 再将第三个数与A匣子中的数相比,大者放入A匣子中; 最后将第十个数与A匣子中的数相比,大者放入A匣子中,此 时A匣子中数就是最大的数; 算法的特点 一个正确的算法应该有如下特征: 一.有穷性 二.确定性 三.可行性 四.有零个或多个输入 五.有一个或多个输出 算法的特点 一.有穷性:一个算法必须保证它的执行步骤是有限的 二.确定性:步骤必须有确切含义 三.可行性:算法原
4、则上能够精确地运行 四.有零个或多个输入(即可以没有输入) 五.有一个或多个输出(即必须要有输出) 算法的描述 1.自然语言 2.伪代码 3.流程图 伪代码 伪代码代码 #include main() int a,b,c,max; printf(input 3 numbers:); scanf(%d%d%d, if(ab)max=a; else max=b; if(cmax)max=c; printf(the maximum number is:%d.n,max); 例如:输入3个数,打印输出其中最大的数。 Begin(算法开始) 输入 A,B,C IF AB 则 AMax 否则 BMax I
5、F CMax 则 CMax Print Max End (算法结束) 算法 必须增加一个空杯C作为过渡,其算法可以表示为: 步骤一:先将A杯中的酒倒在C杯中; 步骤二:再将B杯中的醋倒在A杯中; 步骤三:最后将C杯中的酒倒在B杯中; 上面的算法可以简化表示如下: AC BA CB 流程图表示法图例 用流程图来描述算法要遵循一定的标准,这套标准中最常用的符号有: 开始或结束 输入或输出 判断 处理 连接线 0 N Y 输出方程 无解 输出x 开始 结束 思考题(1) 问题:任意给定3个正实数,设计一 个算法,判断分别以这三个数为三边 边长的三角形是否存在.画出这个算 法的程序框图. 开始 输入a
6、,b,c 三角形存在 结束 a+bc,a+cb, b+ca是否 同时成立? 三角形不存 在 Y N 思考题(2) 问题:已知矩形的长和宽,求矩形的面积。 求矩形面积的方法是:矩形面积=长宽。如果设计的程序只能计算固定的长和 宽,那么,这个程序就没有什么实用性了。 用变量a、b、s分别代表矩形的长、宽、面积,则s的值应该是ab的计算结果。 程序的执行流程应该是: 输入两个数值给a、b 通过计算ab,将结果给变量s 输出变量s的值 用流程图表 示上述算法 开始 输入长到 变量a 输入长到 变量b 计算:sab 输出面积s 结束 表示先计算ab的值,然后将 计算的结果存入变量s中。 “”称为赋值符,
7、它的计算 过程是:先计算符号右侧的代 数式的结果,然后将计算结果 存储到符号左侧的变量中。 思考题(3) 问题:设计一算法,求和:1+2+3+100 开始 i=1,S=0 S=S+i i=i+1 i100 输出S 结束 Y N 思考题(4) 设计“判断大于1的整数n是否为质数”的算法 第一步:判断n是否等于2,若n=2,则n是质数;若n2,则执行 第二步。 第二步:用n除以2,得到余数r,若r=0,则n能被2整除,n不是 质数,算法结束,否则执行下一步。 第三步:用n除以3,得到余数r,若r=0,则n能被3整除,n不是 质数,算法结束,否则执行下一步。 第n-1步:用n除以(n-1),得到余数r,若r=0,则n能被(n-1)整除, n不是质数,算法结束,否则n是质数 。 第二步:依次从2(n-1)检验 是不是 n 的因数,即整除 n 的数。 若有这样的数,则n不是质
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新小区物业承包合同示例
- 2024系统开发合同
- 2024年餐厅租赁合同模板
- 2024分期付款购买合同
- 文化节庆活动赞助协议
- 2025年会计专业考试高级会计实务试卷及解答参考
- 排水箱涵劳务分包合同2024年
- 城市管道天然气特许经营合同
- 抚养权变更协议模板2024年
- 协商一致解除劳动合同书样本
- 新苏教版五年级上册科学全册教学课件(2022年春整理)
- 小学体育水平一《走与游戏》教学设计
- 秋日私语(完整精确版)克莱德曼(原版)钢琴双手简谱 钢琴谱
- 办公室室内装修工程技术规范
- 盐酸安全知识培训
- 万盛关于成立医疗设备公司组建方案(参考模板)
- 消防安全巡查记录台帐(共2页)
- 科技特派员工作调研报告
- 中波广播发送系统概述
- 县疾控中心中层干部竞聘上岗实施方案
- 急性心肌梗死精美PPt完整版
评论
0/150
提交评论