1.2算法的描述与设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

b/a,结束。
自然语言描述与流程图描述的比较
自然语言描述
直观清晰
流程图描述
确定性
繁琐程度 是否容易修改 通俗易懂
伪代码
伪代码表示举例 (1)表示条件判断 if 条件 then 执行语句一 else 执行语句二 end if (2)表示循环处理 do while 条件 循环处理语句 loop
判断某个数是否偶数 输入正数a
思考
1 这个方案总共有多少步?
2 同学们农夫过河问题解决了,那到底什么是算法? 3
哪几步顺序可以颠倒?
4【农夫问题】中,我们是用什么来描述算法的?
5 算法还有其他的描述方法吗?
过河方案
牧 羊 人 过 河 方 案
第一步:将羊运过去 第二步:人返回 第三步:将菜运过去 第四步:将羊运过来 第五步:将狼运过去 第六步:人返回
用自然语言描述算法
小 结
算法的描述
用流程图描述算法
用伪代码描述算法
一个问题,可能有多种算法 ,应该通过分 析、比较、挑选一种最优的算法。一个好算法必 须用到科学的方法 ,应该好好学习各学科处理问 题的科学方法。
实践活动二
用自然语言描述求解ax+b=0的过程(注意讨论a,b的情况)
S1:输入a,b的值,确定方程;
自 然 语 言
S2:若a=0,b≠0,方程无解,结束; S3:若a=0,b=0,x为任意值,结束; S4:若a不等于0,移项得 ax=-b则x=b/a,结束。
算法的描述方法
用自然语言描述算法
流程图
流程图描述
也称为程序框图,它是算法的一种图形化表 示方法。 优点:形象、直观、容易理解
描述解方程ax+b=0算法的两种方法

S1:输入a,b的值, 确定方程;

语 言
流 程无解,结束; 程 S3:若a=0,b=0,x为 图 任意值,结束;
S2:若a=0,b≠0,方 S4:若a不等于0,移 项得 ax=-b则x=-
第七步:将羊运过来
算法
算法的概念
算法就是解决问题的方法和步骤
一个能被解决的问题,其中都包含着算法
算法是程序设计的“灵魂”,世界著名计算机科学家尼克劳斯· 沃思(N·
wirth)指出:算法+数据结构(Data Structure)=程序,可见,算法在程序设
中具有多么重要的地位。算法独立于任何具体的程序设计语言,一个算法可 以用多种程序设计语言来实现。例如,“鸡兔同笼问题”的算法可以用BASIC 语言来实现,也可以用C语言来实现。 那算法都有哪些特征呢?也就是问题的解决都有哪些特点,我们应该注意 些什么呢?
算法的特征
• 有穷性:执行有限步,每一部执行时间有 限 • 确定性:每一步都有确切的含义 • 输入:有零个或多个输入 • 输出:至少产生一个输出 • 可行性:原则上能精确运行,用纸和笔做 有限次运算后即可完成
自然语言
自然语言描述
用自然语言表达算法,就是把算法的各个步 骤,依次用人们熟悉的自然语言表示出来。 优点:容易理解 缺点:书写较烦、不确定性、对复杂的问题难以 表达准确、不能被计算机识别和执行
求解ax+b=0
输入 a , b If a = 0 then if b = 0 then
伪 代 码 描 述
If a除以2余数为0 then 输出“a为偶数” Else 输出“a不是偶数” End if
输出x为任意值 else
输出x无实数解 end if Else x= -b/a End if
伪代码
算法的描述
用流程图描述算法 用伪代码描述算法
用???描述解方程ax+b=0
算法的开始或结束
流 程 图
输入或输出信息
条件判断
常用的“流程图”所用的基百度文库符 号
程序框 名称 开始/结束 功能 算法的开始或结束
输入/输出
处理
输入或输出信息
计算与赋值
判断
流程线
条件判断
算法中的流向
连接圈
表示算法流向出口或入 口连接点
伪代码描述
伪代码是介于自然语言和计算机程序语言之
间的一种算法描述。
优点:简洁、易懂、修改容易 缺点:不直观、一旦出现逻辑错误不容易排查
描述求解ax+b=0的三种方法
伪代码描述
输入 a , b
自然语言描述
S1:输入a,b的值, 确定方程;
流程图描述
If a = 0 then
if b = 0 then 输出x为任意值 else 输出x无实数解
算法的描述与设计
LOGO
高级中学赵晓乐
算法的描述与设计
农夫问题
有一个牧羊人带着一头羊,一只狼和一颗 大白菜准备过河,他找到一只很小的船,每次只 能带一样东西过去,可是如果让狼与羊单独在一 起,狼会吃羊,让羊与白菜单独在一起,羊会吃白 菜,牧羊人应如何过河?
要求:现在请同学们来设计一个方案,把 3样东西安然无恙的带过河。
S2:若a=0,b≠0,方
程无解,结束; S3:若a=0,b=0,x为 任意值,结束; S4:若a不等于0,移 项得 ax=-b则x=b/a,结束。
end if
Else x= -b/a End if
根据具体的情况选择不同的方法
算法——解决问题的方法和步骤 特征:有输入 确定性 有穷性 有输出 可行性
相关文档
最新文档