1 / 31
文档名称:

算法和算法的表示.ppt

格式:ppt   大小:209KB   页数:31页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

算法和算法的表示.ppt

上传人:大鹏展翅 2022/7/2 文件大小:209 KB

下载得到文件列表

算法和算法的表示.ppt

相关文档

文档介绍

文档介绍:算法与程序设计
张依
计算机解决问题的过程
走进编程
汉诺塔问题分析:
问题的条件:
每次只能移动一只盘子
任何时候大盘不能压在小盘之上
圆盘只能套在A,B,C三根柱子之一上存放
将n个盘子从A柱移到算法与程序设计
张依
计算机解决问题的过程
走进编程
汉诺塔问题分析:
问题的条件:
每次只能移动一只盘子
任何时候大盘不能压在小盘之上
圆盘只能套在A,B,C三根柱子之一上存放
将n个盘子从A柱移到C柱可以分三步进行:
从A柱移动1至n-1号盘到B柱,C柱作为辅助柱
从A柱移动n号盘到C柱
从B柱移动1至n-1号盘到C柱,A柱作为辅助柱
有一种较巧妙的方法,古代孙子就提出“砍脚算法”:如果将鸡和兔的脚都砍去一半,则1鸡对应1脚,1兔对应2脚,那么脚数减去鸡兔总数即为兔的数量,可得兔有94/2-35=12只,鸡有35-12=23只,
假如鸡兔共有a只头,b只脚,由此可知,鸡+兔=a,2鸡+4兔=b,计算得知,鸡=a- b-2a /2只,兔= b-2a /a只,直接公式计算可以得出
自然语言描述的算法如下: 1 初始化鸡兔总头数与总脚数 初始总头数a=35,总脚数b=94 2 计算鸡的数目 输出鸡的数目为a- b-2a /2 3 计算兔的数目 输出兔的数目为 b-2a /2 4 结束 计算完成,结束
使用计算机解决问题的一般过程
1、分析问题确定要用计算机做什么
2、寻找解决问题的途径和方法,
3、用计算机进行处理,
人工解题与计算机解题
人工解题过程:
理解和分析所面临的问题;
寻找解题的途径和方法;
用笔、纸、计数器等工具进行计算;
验证计算结果,
计算机解题过程:
理解和分析所要求的问题;
寻找解题的途径和方法;
生成解题算法;
选用一种算法语言根据算法编写程序;
通过编辑、编译、连接产生计算机能够识别的指令序列;
在计算机上执行该指令序列;
检测结果,
用计算机程序解决问题的基本过程
设计算法
分析问题
编写程序
调试程序
检测结果
人工解题与计算机解题的异同点
确定解决问题的方法
例1 使用一根长度为L厘米的铁丝,制作一个面积为S平方厘米的矩形框,,铁丝的长度L和矩形框面积S是根据需要预先指定的,,
面积S
宽 w

h
长度为L厘米的铁丝
高h,则宽W=L/2-h
面积 h L/2-h =s
h2-Lh/2+S=0
h1,h2=
d=L2-16S
d>0 h= w=
d<0 无实数解
d=0 h=w=L/4
P4问题与练习
、生活中遇到的问题是否都能表示成数学公式
①列举几个能表示成数学公式的问题的例子,
例如:行程问题
②列举几个不能表示成数学公式的问题的例子,并说明你的解决步骤,
例如数列的排序
把解决问题的方法步骤化
在小品《钟点工》中,宋丹丹讲了这样一个笑话:说要把大象装冰箱,一共分几步
答案:第一步先把冰箱门打开,第二步把大象放进去,第三步把冰箱门关上,
一个农夫带着一条狼、一头山羊和一篮蔬菜要过河,但只有一条小船,乘船时,农夫只能带一样东西,当农夫在场的时候,这三样东西相安无事,一旦农夫不在,狼会吃羊,羊会吃菜,
参考答案;
渡河的方法与步骤:第一步:农夫带山羊过河;第二步:农夫自己返回;第三步:农夫带狼过河,同时带山羊返回;第四步:农夫带蔬菜过河;第五步:农夫返回;第六步:农夫带山羊过河,
程序的组成部分
指令部分
数据部分
1 显示文字“请输入长度:”
2 接受输入数据 铁丝的长度 送到变量L
3 显示文字“请输入面积:”
4 接受输入数据 矩形框的面积 送到变量S
5 计算L2-16S,结果送到变量d
6 若d=0转到12
7 若d<0转到15
8 输出文字“两条不同的边长”
9 输出: L+√d /4
10 输出 L- √ d /4
11 结束
12 输出文字“两条相同的边长”
13 输出:L/4
14结束
15 输出文字“ 无解“
16结束
指令区
变量L中的数值
变量S中的数值
变量d中的数值
数据区
设计程序需考虑的问题

铁丝的长度L和矩形框的面积S
以及中间结果 L2-16S 需要存储在不同的变量中

输入指令
输出指令
算术运算指令
逻辑判断指令
控制转移指令