1.2算法描述与设计

合集下载

1.2算法和算法的描述

1.2算法和算法的描述

复习与巩固
伪代码4 I=1 Do if I mod 3=0 then print I end if I=I+1 Loop until I>100 伪代码5 I=1 Do if I mod 3=0 then print I end if I=I+1 Loop while I≦100
1.农夫带羊到右岸,独自返回左岸; 2.农夫把菜带到右岸,返回时白羊带回左岸; 3.农夫带狼到右岸,独自返回左岸; 4.农夫把羊带到右岸,完成过河。
3
一、算法
1、算法的概念 算法是在有限步骤内求解某一问题所使 用的一组定义明确的规则。通俗地说,算法 就是求解某一问题的方法,是能被机械地执 行的动作或指令的集合。
三、算法在解决问题中的地位和作用
表1-6中 两个程序的效率比较
指标 运行结果 用辗转相除法设计的程序 最大公约数= 用穷举法设计的程序 最大公约数=
运行时间 通用性
□较长 □较好
□较短 □较差
□较长 □较好
□较短 □较差
由此看来,算法是程序设计的核心,是程序设计的灵 魂。算法的好坏,直接影响着程序的通用性和有效性,影 响着问题解决的效率。
用自然语言 描述算法
缺点:
自然语言具有歧义性,容易导致算法执行的不确定性。 自然语言描述的算法太长。 当算法中循环和分支较多时,很难清晰地表示出来。 自然语言表示的算法不便翻译成计算机程序设计语言。
用流程图描述算法
优点:描述清晰简洁,不依赖计算机和计算机程序设计语言。 缺点:画起来费事,难以阅读,难以修改。 优点:书写方便,格式紧凑,易于理解,便于向计算机 程序设计语言过度。 缺点:由于语言的种类繁多,伪代码的语句不容易规范。
二、算法的描述

1.2算法和算法的描述PPT课件

1.2算法和算法的描述PPT课件

结束
例2:鸡兔同笼问题。
一个笼子里有鸡和兔,现在只知道里面一共有35个头,94只脚。鸡和兔各有 多少只?
(一)、用自然语言描述算法
(二)、用流程图描述算法
开始
1、输入a和b的值。
2、计算鸡数X=(4a-b)/2。
输入a和b的值
3、计算兔数Y=(b-2a)/2。 4、输出X和Y的值。
计算鸡数X=(4a-b)/2

I=I+1 是
I《=100

结束

输出I的值
设计一个算法求三个数中的 最大数
开始
输入a b c
如果a>b且a>c

如果b>c

输出c

输出a

输出b
结束
韩信点兵问题: 相传汉高祖刘邦问大将军韩信统御士兵多少,韩信答道: 每3人一列余1人,5人一列余2人,7人一列余4人,13人一 列余6人…….刘邦听后茫然而不知其数,你能说出有多少士 兵吗?
11 求101+102+103+104+…+1001的和。
Private Sub Command1_Click() S=0 For i=101 to 1001 step 1 S=S+i Next i End sub
12 求1*6*11*……*46的积。
Private Sub Command1_Click() S=1 For i=1 to 46 step 5 S=S*i Next i End sub
1、输入A B 2、交换AB的值 3、输出A B
1、输入A B 2、c = b
b=a a=c 3、输出A B
设计一个算法,求出100以内能被3整除的所 有正整数。

高中信息技术《算法与程序设计》优质教案、教学设计

高中信息技术《算法与程序设计》优质教案、教学设计

《算法与程序设计》
1.2 算法描述与设计
教学设计
单位:授课人:
《算法描述与设计》教学设计
为了更形象、直观地表示算法,我们引入了流程图
,学生学习流也叫程序框图。

下面,同学们学习“韩信点兵”问题的
流程图表示。

开始
1n
n 被3 、5 、7 整Y
除后余数为
2 、
3 、2
N
n+1n
输出n 的值
结束
流程图描述算法常用的框图主要有以下几个:
在流程图的基础上,专业软件开发人员一般采用伪代码来描述算法。

伪代码是一种介于自然语言和计算机语言之间的一种算法描述,不是真正的程序语言代码,所以没有严格的语法限制,书写格式也比较自由,只要把意思表达清楚就可以了。

例如,判断闰年伪代码算法描述如下:
输入年份y
IF y 能被4 整除THEN
IF y 能被100 整除THEN
IF y 能被400 整除
输出“是闰年”
附:《算法描述与设计》流程图作品评价量表
《算法描述与设计》流程图作品评价量表
说明:1、作品评价等级分为A、B、C、D 四个等级。

2、在对应的作品等级下画“√”。

1.2.2如何描述算法

1.2.2如何描述算法

1.2 算法描述与设计
班级姓名
【学习目标】
1、理解什么是算法,知道算法的多样性;
2、学会用自然语言、流程图和伪代码来描述算法;
3、能够对设计的算法做出简单的评价。

【导学一】创设情境,写出算法
有一个牧羊人带着一只羊,一只狼和一颗大白菜准备过河,他找到一只很小的船,每次只能带一样东西过去,可是如果让狼与羊单独在一起,狼会吃羊,让羊与白菜单独在一起,羊会吃白菜,牧羊人人应如何过河?
要求:现在请同学们来设计一个方案,把3样东西安然无恙的带过河。

第一步:
第二步:
第三步:
第四步:
通过以上例子,我们总结出算法是:,上面的算法我们是用自然语言描述。

【导学二】算法的特征
阅读课本第5页,算法的特征:、、、和。

判断下列算法是否符合算法的特征:
利用计算机求解方程:ax2
+bx+c=0 (a≠0) 请你设计算法并描述出来。

1.自然语言描述
第一步:
第二步:
第三步:
2.回忆高一数学课上学过的流程图表示方法,参照第8页图1-3图例和1-4画出流程图。

3.用伪代码描述算法(可参照第9页算法的描述)。

【课堂练习】
1.不需要精确计算时,我们可以使用估算的方法。

例如,考虑班级外出旅游费用时,如果每人需要21元,则全班48人的费用大约为1000元。

计算机会这样解决问题吗,为什么?
2.超市苹果进行打折促销,苹果正常售价是1.5元/斤,若买5斤以上售价打九折,为给收银员编写一个付款程序请你设计算法并描述出来。

《1.2算法描述与设计》教学设计

《1.2算法描述与设计》教学设计

教资教学设计题万能模板一、教学目标根据新课改的要求和学生已有的知识基础和认知能力,我确定的'教学目标是:(1)知识与技能目标:通过自主学习……,学生能够……(2)过程与方法目标:通过合作学习……,学生能够……(3)情感、态度、价值观:通过探究学习……,学生能够……二、教学重难点本课的教学重点:通过……学生能够掌握……本课的教学难点:通过……发展/提高学生……三、教学方法主要采取的教学方法:引导启发法。

在本节课的教学中主要渗透自主探究法、小组讨论法等。

四、教学过程(1)导入新课本课主要采用……等方法,不仅能引起学生的兴趣,还能够引导学生思考,并且引出新课题。

(2)讲授新课在讲授新课时,为了突出本节课的知识与技能目标,首先引导学生自主学习,学生对基本的概念和知识初步感知。

通过这种方法,既体现了新课改中以学生为主体的思想,又调动了学生学习的积极性。

这部分讲授完成后,开始讲解本节课的难点,也就是过程与方法目标,引导学生进行探究学习,学生先进行探究学习,能够用自己的话语总结方法。

然后,结合实例,对方法进行详细讲解。

通过这种方法,既让学生能够深入理解这种方法,也可以增进学生之间相互帮助的情感。

(3)巩固练习根据各科目自行设计。

(4)小结(5)作业布置布置课后作业。

五、板书设计板书设计采用图文并茂的形式,清晰展示全文整体结构,突出重难点,彰显文章主题。

六、教学反思根据学生对作完成情况,反思教学目的是否达到。

考生可在考试前,根据自己选报的科目,进行教学设计。

建议笔试考生反复背诵,直到熟记于心。

1.2算法和算法的描述(马凯莉)@停课不停学选修精品

1.2算法和算法的描述(马凯莉)@停课不停学选修精品

01 算法的描述
Input a,b

代x=2a-b/2码来自描y=b/2-a

Print x,y
01 算法的描述
自然语言描述
伪代码:伪代码是介于自然语言和计算机程序语言之间的一
种算法描述。 优点:简洁、易懂、修改容易 缺点:不直观、错误不容易排查
03 小结
算法——解决问题的方法和步骤
特征:有输入 确定性 有穷性 有输出 可行性
这种为解决某一问题而设计的确定的有限的步骤就称为算法。
当然这是一个极简单的问题,算法中只有几个步骤。 实际要处理的问题可能要复杂得多,相应的算法可能需要几 十个甚至几百个步骤才能完成。 在以后的编程中也要记住了,有些步骤是可以颠倒的,不影 响程序的结果;但是有些一旦颠倒了那最终的结果也就全变 了。
方法一
1.用5毫升的杯子装满水,倒入3毫升的杯子。这样,大杯子里 剩余2毫升水。 2.将小杯子里的水倒掉,将大杯子里剩余的2毫升倒入小杯子。 3.用大杯子盛满水,再用大杯子的水将小杯子倒满。这样,大 杯子里剩下的便是4毫升的水。
方法二
1.小杯子盛满水倒入大杯子,再用小杯子盛满水,将大杯子正 好倒满,这样小杯子正好剩下1毫升水。 2.大杯子的水倒掉,小杯子的1毫升水倒入大杯子。 3.用小杯子盛满水,倒入大杯子。这样,大杯子里便装了4毫 升的水。
02 算法的特征
01
有穷性:一个算法在执行有穷步之后必须结束。
例:计算1+2+3+……+100=? 分析:这个算法有限制范围,可以在有限步骤内完成,
02
确定性:算法的每一个步骤必须要确切地定义。
例:桌子上有两个苹果(对比:桌子上有一些苹果)
02 算法的特征

1.2.1算法是“灵魂”

1.2.1算法是“灵魂”
2a , 2a
分析问题(找出已知和未知、列出已知和未知之间的 关系) 设所求的数为X,则X应满足:X整除3余1 ,X整除5余 2,X整除7余4 写出解题步骤 1、令X为1。 2、如果X整除3余1,X整除5余2, X整除7余4,这 就是题目要求的数,则记下这个X。 3、令X为X+1(为算下一个作准备)。 4、如果算出,则结束;否则跳转2。 5、写出答案。(穷举法)
实践:
1.请写出求解一元二次方程ax2+bx+c=0的算
法。 2.“水仙花数问题”:水仙花数是指一个三位 数,它的各位数的立方和正好等于该数本身。 如:153=13+53+33。请设计算法求解“水仙3;bx+c=0的算法步骤(自 然语言描述) 1.输入a,b,c; 2.计算d=b2-4ac; 3.判断d<0是否满足,若满足,则输出“方程无 实数解”;若不满足,进入步骤4; 4.判断d=0是否满足,若满足,则输出“方程有 b 一实数解为 ” ;若不满足,则输出“方程 2a 有两实数解,分别为 ”; b d b d 5.结束算法。
事实上,计算机能有如此广泛而神奇的应 用,除了半导体集成电路芯片制造工艺的 提高外,主要是靠软件,而软件的核心是 算法。无论是制造芯片的软件,还是“深 蓝”战胜卡斯帕罗夫,都是靠巧妙的算法。 算法是人类智慧的结晶,计算机科学中的 知识创新,主要就是算法的创新,创建一 种新算法其意义不亚于建造一种新机型。

返回
1.2 算法描述与设计
算法对于程序设计至关重要,当找到算法后还 要考虑如何准确、具体地描述算法,通过本节 的学习你将能做到: ■ 进一步理解什么是算法,知道算法的多样性 ■ 能够对设计的算法做简单的评价 ■ 学会用自然语言、流程图和伪代码来描述算 法

1.2 算法和算法的描述[粤教版]

1.2  算法和算法的描述[粤教版]

给出伪代码描述,学生用自然语言及流程图描述
设:MAX为评委给出的最高分;MIN为评委给出的最底分;N为评委给 出的分数个数;X为评委给出的分数;S为评委分数总和。 用伪代码描述如下: N=1 S=0 输入第一个评委给出的分数→X S=S+X MAX=X MIN=X N=N+1 IF N>10 THEN 输出 (S-MAX-MIN)/8;结束 ELSE 输入下一个评委给出的分数→X S=S+X IF X>MAX THEN MAX=X IF X<MIN THEN MIN=X END IF 返回”N=N+1”这一步
关于“算法”的概念
算法是解决问题方法的精确描述。 在编程领域,算法可以进一步定义为“算法就 是用计算机求解某一问题的方法,是能被机械 地执行的动作或指令的有穷集合。”

关于算法的特征
作为一个算法应该具有以下5个特征: 1. 0个或多个输入:一个算法应具有0个或多个 输入数据,0个是指在算法中已指定了初始 值。 2. 至少1个输出:一个算法至少要有一个输出 数据,以告知人们算法运行的结果。若没有 任何输出,则这一算法不具备意义、不具有 价值。 3. 有穷性(有限性):一个算法必须在经过有 限个步骤之后正常结束。
优点:符合人们日常的表达习惯,容易理解。 缺点:书写较烦、容易出现歧义,对复杂的问 题难以表达准确,不能被计算机直接识别和执 行。
用流程图描述算法

流程图,也称为程序框图,它由一系列的流程 符号组成,是算法的一种图形化表示方法。
常见的流程符号
图形符号 符号名称
起止框
功能
表示算法的开始或结束 表示输入输出操作 表示处理或运算的功能 用来根据给定的条件是否满足决定 执行两条路径中的某一路径 表示程序执行的路径,箭头代表方 向

1.2算法和算法的描述

1.2算法和算法的描述

算法一
算法二
第一步:烧水;
第一步:烧水;
第二步:水烧开后, 优化? 第二步:烧水过程中,
洗刷茶具;
洗刷茶具;
第三步:沏茶。
第三步:水烧开后沏茶。
一个好算法必须用到科学的方法
第二个算法的科学性在于应用了“统筹方法”
算法是程序设计的核心,是程序设计的灵 魂。算法的好坏,直接影响着程序的通用性和 有效性,影响着问题解决的效率。
第三步:人和菜过河,人返回,留下菜; 第四步:人和羊过河
二、算法的描述——用流程图描述算法
常用的“流程图”所用的基本符号
程序框
名称
功能
开始/ 结束
算法的开始 和结束
输入/ 输出
输入和输出 信息
处理
计算与赋值
判断
条件判断
流程线 连接点
算法中的流向
表示算法流向出口或入 口连接点
用流程图描述求解 a的绝对值的算法
一、算法——解决问题的方法和步骤
算法的特征:
1、输入——一个算法有零个或多个输入; 2、输出——算法有一个或多个输出; 3、确定性——算法的每一个这步个骤人必连须老要张也确不切认地识定义; 4、有穷性——一个算法在执行有穷步之后必须结束; 5、能行性——算法中有待执行的运算和操作必须是相
当基本的。(运算和操作能精确地执行)
最小自然数。
韩信点兵
1、令X为1 2、如果X整除3余1,X整除5余2,X整除7余4,这就是题目要求的 数,则记下这个X 3、令X为X+1(为算下一个作准备) 4、如果算出,则结束;否则跳转2 5、写出答案
过河的方案: 第一步:人和羊过河,人返回,留下羊; 第二步:人和狼过河,人和羊返回,留下狼; 第三步:人和菜过河,人返回,留下菜和狼; 第四步:人和羊过河

1.2算法描述与设计

1.2算法描述与设计

1.2 算法描述与设计一、教材分析本节是高中信息技术选修课《算法与程序设计》(教科版)第一章“如何用计算机解决问题”的第二节“算法描述与设计”。

通过1.1 节的学习,学生已经了解了计算机解决问题的基本过程,并知道算法是程序设计的灵魂,只要算法正确,就可以用任何一种语言编写程序。

本节课通过几个典型的例子来帮助学生加深对算法的理解,并学会用不同的方法描述算法。

二、学生分析学生在数学课中对算法已经有所了解,特别是用“自然语言”和“流程图“描述算法,高一数学中已经讲过了,所以教师可以让学生自己先尝试完成。

三、教学目标1、知识与技能进一步理解什么是算法,知道算法的多样性。

2、过程与方法①能够对设计的算法作简单的评价;②学会用自然语言、流程图和伪代码来描述算法。

3、情感、态度及价值观教师注意结合实例给学生讲解,帮助学生建立并保持其学习程序设计的兴趣和信心。

四、教学重、难点1、重点算法的三种描述方法:自然语言、流程图和伪代码。

2、难点结合实例分析算法的三种描述方法。

五、教学策略1、教学思路本节课用日常生活问题和趣味性数学题引入 , 让学生通过比较,思考、讨论、探索解决问题的方法和步骤,理解算法的相关概念,通过两个例子由浅入深地引导学生思考,讨论,进行探究性学习,符合学生的认知规律。

通过讲授、演示观察、讨论相结合的方法,充分调动学生的主观能动性,以达到主动学习、探究性学习。

作品欣赏——进入算法(解决问题的方法和步骤)——算法的三种描述方法(结合实例:韩信点兵问题、闰年的判断)。

教学过程一、作品欣赏、引入新课学生活动:欣赏利用VB制作的小作品:九九乘法表、智能计算器、打靶游戏、十二中学生辩论赛计时器。

教学总结:刚才同学们看到的都是利用VB制作的小程序,其中有老师自己制作的,也有老师从网上下载的,同学们想不想自己动手制作自己喜欢的小程序哪?比如自己开发的小游戏等。

二、结合实例、讲解新课1、算法是“灵魂”教师活动:从今天开始我就教大家如何制作自己喜欢的小程序。

高中信息技术 1.2算法描述教案 粤教版选修1

高中信息技术 1.2算法描述教案 粤教版选修1

1.2算法和算法的描述教学目标:1.进一步理解什么是;算法,知道算法的多样性2.能够对设计的算法做简装的评价3.学会利用自然语言、流程图和伪代码来描述算法教学内容1.了解什么是算法及其特征2.学习三种描述算法语言教学重点:通过例子设计算法教学难点:三种描述算法语言的使用课时数:1课时正课讲解一、算法是“灵魂”1.算法存在于人们生活中,如:上街购物、顾客付款、营业员(主)找银等。

2.“韩信点兵问题”有不同的求解过程,就有不同的算法。

有N个人,除以3,5,7,分别余2,3,2,求N。

3.算法——解决问题的方法和步骤。

算法是尼克劳斯.沃斯(N.Writh)提出的,他指出:算法+数据结构=程序。

(即算法不能单独构成程序,它必须和数据结构合二为一)4.算法的发现时间:公元前3000年~公元前1500年地点:巴比伦巴比伦人求解“算法”的过程:先用解代数方法,再计算实际数目,最后写上一句短句“这就是一个过程”。

5.算法的特征我们曾在必须修课中提过一点算法,如:冒泡排序法。

例:计算1+2+3+……+100=?分析:这个算法有限制范围,可以在有限时间内完成,这是算法的第一个特征:有穷性。

计算此算法可以用纸笔、算盘、运算器和计算机来完成,且计算过程是多样的,但结果是唯一的。

这就是算法的可行性、确定性。

计算方法:⑴把这100个数按顺序相加。

⑵用凑数法:1+99=100,2+98=100,3+97=100,……,49+51,最后只剩下50和100。

⑶令S=0,使1≤n≤100,先执行S=S+n ⑴,再执行n=n+1 ⑵n=1,S=0时,S(0)=1 n=2,S=1时,S(0)=3 n=3,S=3时,S(0)=6n=4,S=6时,S(0)=10 n=5,S=10时,S(0)=15 n=6,S=15时,S(0)=21……算法的另外一个特征:输入、输出。

练习:水仙花数问题,如153=1^3+5^3+3^3,分析它应满足什么条件才能使用此方法?二、如何描述算法1.用自然语言描述算法⑴自然语言——人们日常生活中使用的语言。

12算法和算法的描述

12算法和算法的描述

1.2 算法和算法的描述
2.算法的特征
(1)输入。零个或多个输入 (2)确定性 (3)有穷性。在执行有穷步之后必须结束。 (4)输出。一个或多个输出 (5)能行性 P9实践
1.2 算法和算法的描述
1.2.2算法的描述 主要有自然语言、流程图、伪代码等
问题1:欧几里得算法(辗转相除法)
设两个正整数为m和n,求它们的最大公约数步骤为: (1)以m除以n,令所得的余数为r (2)若r=0,则输出结果n,算法结束;否则,继续步 骤(3) (3)令m=n,n=r,并返回步骤(1)继续进行。
1.2.3算法在解决问题中的地位和作用
算法是程序设计的核心,是程序设计的灵魂。
算法的好坏,直接影响着程序的通用性和有效性,影 响着问题解决的效率。
1.2 算法和算法的描述
1.2.1算法 1.算法确的规则。
P8实践 欧几里得算法
设两个正整数为m和n,求它们的最大公约数步骤为: (1)以m除以n,令所得的余数为r (2)若r=0,则输出结果n,算法结束;否则,继续步 骤(3) (3)令m=n,n=r,并返回步骤(1)继续进行。
1.2 算法和算法的描述
2.用流程图描述算法 表1-4流程图的基本图形及功能
开始
输入正整数m和n
r=m除以n的余数

r =0
m=n,n=r

输出n的值
结束
1.2 算法和算法的描述
3.用伪代码描述算法 伪代码是用介于自然语言和计算机语言之间 的文字和符号来描述算法的工具。
P12交流,完成表1-5的填写

1.2.2算法的描述

1.2.2算法的描述

1.2 算法和算法的描述 介休一中
实践
设给定的两个正整数m=112和n=64,利用辗 转相除法,求它们的最大公约数。
(1)112除以64,余数为48 (2)64除以48余数为16 (3)48除以16余数为0
答112和64的最大公约数16 思考:112和64的最小公倍数——
1.2 算法和算法的描述 介休一中
s p( p a)(p b)(p c)
其中 p=(a+b+c)/2
1.2 算法和算法的描述 介休一中
算法描述方式的比较
算法描述方式 优势
不足
自然语言 流程图
容易理解 直观、形象
书写较烦、不确定性、对 复杂的问题难以表达准确、 不能被计算机识别和执行
不能被计算机识别和执行
伪代码
书写方便,格式紧凑, 不容易规范,有时产生误 易于理解,便于向程序 解
辗转相除法求最小公倍数的算法
最小公倍数 = 两个数的积 / 最大公约数
1.2 算法和算法的描述 介休一中
算法
通俗地说,算法就是用计算机求解某一问题的 方法,是能被机械地执行的动作或指令的有来自 集合。表示算法的语言
自然语言、流程图、伪代码
1.2 算法和算法的描述 介休一中
算法 algorithm: [ ‘ælgəriðəm ] 特征
(1)分析问题
设所求的鸡数为x,兔数是y,已知笼子里的头数是a,脚数 是b,依题意,得到如下方程组: x+y=a 2x+4y=b 解方程组得:x=2a-b/2 , y=b/2-a
1.2 算法和算法的描述 介休一中
(2)算法
自然语言描述
1、输入a和b的值; 2、求x=2a-b/2 ; 3、求y=b/2-a; 4、输出x,y的值; 5、结束。

1.2 算法的描述教学设计

1.2 算法的描述教学设计

1.2 算法的描述一.教学目标1.知识与技能:了解算法的描述方法;认知流程图的六种基本符号;理解算法的择优。

2.过程与方法:理解用不同的表达方法描述算法的优缺点。

掌握用流程图描述简单问题的方法。

3.情感态度和价值观:以鸡兔同笼问题引出算法的描述方法,激发学生的学习兴趣,培养学生的主动探究能力;培养良好的信息素养。

二.教学重难点重点:1.算法的描述方法;2.流程图的六种基本符号;3.用流程图描述简单的算法。

难点:1.用流程图描述算法;2.算法的择优。

三.教学策略任务驱动、合作讨论、自主探究相结合四.教学设计(一)复习旧课1.算法的概念:算法是在有限步内求解某一问题所使用的一组定义明确的规则。

通俗地说,算法就是用计算机求解某一问题的方法,是能被机械地执行想动作或指令的有穷集合。

2.算法的特征:输入、输出、确定性、有穷性、可执行性。

(二)教授新课问题导入:鸡兔同笼问题:一个笼子里有鸡和兔,现在只知道一共有a个头,b只脚,问鸡和兔各有多少只?解:设鸡有x只,兔有y只。

x+y=a2x+4y=b解方程的x=2a-b/2, y=b/2-a1.自然语言描述法:1)输入a和b的值;2)求x=2a-b/2;3)求y=b/2-a4)输出x,y的值;5)结束。

自然语言通俗易懂,但有时会有歧义、较长、结构不清晰、不便转换为程序设计语言,所以引出另一种描述方法:伪代码描述法。

2.伪代码描述法:1)Input a,b2)x=2a-b/23)y=b/2-a4)Print x,y5)End伪代码书写方便、格式紧凑、易理解,便于转换为程序,但是其种类繁多,不容易规范,可能产生误解。

所以引入另一种描述方法——流程图描述法。

3.流程图描述法(先让学生自己画流程图,然后再讲解,看自己画的和老师讲的有何异同。

)2)例题的流程图:(三)三种描述方法的比较(四)拓展训练三角形面积问题:设计一个算法,实现如下功能:从键盘上输入三角形的三条边长a,b,c,如果能构成一个三角形,则输出其面积,否则输出“不能构成一个三角形!”的提示信息。

1.2算法的描述与设计精品PPT课件

1.2算法的描述与设计精品PPT课件
我要感谢你,能遇到你这样着淤 泥而不 染的女 子,将 我引领 到纯净 无污染 的文字 世界中 。当我 看到你 ,我的 内心由 平静变 得美丽 而激动 ,由激 动变得 一片坦 然。是 你,给 了我燥 热的内 心一份 美丽的 清凉; 是你, 将我让 我看到 同一世 界不同 女人的 卓越风 姿;是 你,让 我爱上 一位你 这样正 直婉约 的女子 。 文字的夏天,因为你,送给我无 限明媚 的阳光 ,赠予 我满目 红白交 映的清 新。从 此,我 更爱文 字的世 界,因 为你, 在雨中 的世界 是最迷 人的。 你若白 衣仙子 ,从天 上飘来 人间, 不紧给 人观赏 ,还给 我们带 来动静 相宜的 舞蹈, 夏风吹 来轻歌 曼舞, 夏雨飘 来荷韵 点点。 雨荷, 雨荷, 这就是 你的名 字,多 么诗情 画意, 多么湿 润飘曳 ,是人 间的仙 子,是 洒脱的 美丽。 是你, 雨荷仙 子,教 会了我 ,看文 要看高 雅的文 ,写文 要写高 雅的文 字,做 人要做 正直高 雅的女 子。
如果你要学做人,一定从好人做 起,而 后做一 个有趣 的人。 人只有 灵魂有 趣了, 才会会 变得真 的有趣 。并不 是讲一 两个从 书上看 来的笑 话段子 就是有 趣,它 囊括你 生活中 的方方 面面, 包括你 的言行 举止, 包括你 的生活 习惯, 包括你 的思想 境界… … 秋日,夜晚长情,言语柔软。此 时,我 只有一 颗心跳 动。关 于人生 的所有 ,我无 法在遥 控板上 一一设 定。倘 若我只 能做一 天和尚 ,我打 算,就 在今天 认真地 敲一天 钟。至 于以后 ,庭前 落花误 春意, 唯有今 宵秋日 夜语漫 漫。
流程图
流 程 图
流程图
流程图描述
也称为程序框图,它是算法的一种图形化表 示方法。
描述“韩信点兵”算法的两种方法
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章 如何用计算机解决 问题
第二节 算法描述与设计
一、算法是“灵魂”




1.算法存在于人们生活中,如:上街购物、 顾客付款、营业员找银等。 2.“韩信点兵问题”有不同的求解过程, 就有不同的算法。 有N个人,除以3,5,7,分别余2,3,2, 求N。 3.算法——解决问题的方法和步骤。 算法是尼克劳斯.沃斯(N.Writh)提出的, 他指出:算法+数据结构=程序。 (即算法不能单独构成程序,它必须和数 据结构合二为一)
5.算法的特征
练习: 水仙花数问题,如153=1^3+5^3+3^3, 分析它应满足什么条件才能使用此方法?

第一章 如何用计算机解决问题 第二节 算法描述与设计 为了能更好地理解什么是算法,我 们利用日常生活中的“打电话”和 “寄信”的例子来讨论。 方法:先由同学来口述过程。
“打电话” 的过程。
说出下面流程图的各框名称
开始框 输入框 处理框
判断框
处理框 处理框 处理框 输出框 结束框
小结 : 什么是算法? 解决问题的方法和步骤就是 算法
小结 :
算法描述的方法有三种。
用自然语言来描述
用流程图来描述
用伪代码描述算法


使用伪代码描述算法没有严格的语法限制, 书写格式也比较自由,只要把意思表达清 楚就可以了,它更侧重于对算法本身的描 述。 在伪代码描述中,表示关键词的语句一般 用英文单词,其他语句可以用英文语句, 也可以用汉语语句。
伪代码的优缺点: 用伪代码描述的算法简洁、易懂, 修改起来也比较容易,并且很容 易转化为程序语言代码。 缺点是不是很直观。
3、用伪代码描述算法。
例如,给定一个四位数的年份,判断它是否为闰年。如果用伪代码来描述算法, 可以表示如下: 算法分析:我们知道,如果2月是28天,则这一年是平年;如果是29天,则这 一年是闰年。判断闰年的条件是:如果该年份能被4整除但不能被100整除, 或者能被400整除,则该年为闰年。 算法描述: 输入年份→y IF y能被4整除 THEN IF y 不能被100整除 THEN 输出“是闰年” ELSE IF y 能被400整除 THEN 输出“是闰年” ELSE 输出“不是闰年” END IF END IF ELSE 输出“不是闰年” END IF
自然语言的优点:通俗易懂。
缺点:容易产生歧义。
例如:
“这个人连老张也不认识”。
意思之一:这个人不认识老张。
意思之二:老张不认识这个人。
2、用流程图来描述。
什么是流程图?(也称 程序框图)它是算法的 一种图形化表示方法。
认识流程图符
流程图的优缺点
与自然语言相比,用流程图描述 算法形象、直观,更容易理解。
1、用自然语言来描述。 2、用流程图来描述。 3、用伪代码描述算法。
1、用自然语言来描述。
什么是自然语言。
人们日常生活中使用的语言
算法描述:
以“韩信点兵问题” 为例:
算法分析:
以“韩信点兵问题” 为例:
考虑:


凯撒密码的原理是将“明文”中的每个字母用 另外一个字母替换,这样就形成“密文”。已 知凯撒密码的计算公式为F(a)=(a+k) Mod n, k=3,n=26,如果将英文字母进行加密,其 对应关系如下所示: 明文:A B C D E F …… X Y Z 密文:D E F G H I …… A B C 现给出待加密字符串为“PROGRAM”,请同学 们设计算法,然后用自然语言将它描述出来。



我们曾在必须修课中提过一点算法,如:冒泡排序法。 例:计算1+2+3+……+100=? 分析:这个算法有限制范围,可以在有限时间内完成, 这是算法的第一个特征:有穷性。计算此算法可以用纸笔、 算盘、运算器 和计算机来完成,且计算过程是多样的,但结果是唯一 的。这就是算法的可行性、确定性。 计算方法: ⑴把这100个数按顺序相加。 ⑵用凑数法:1+99=100,2+98=100, 3+97=100,……,49+51,最后只剩下50和100。 ⑶令S=0,使1≤n≤100,先执行S=S+n ⑴,再执行 n=n+1 ⑵ n=1,S=0时,S=1 n=2,S=1时,S=3 n=3,S=3时,S=6 n=4,S=6时,S=10 n=5,S=10时,S=15 n=6,S=15时,S=21 …… 算法的另外一个特征:输入、输出。

忙音 拨 号 通了

听 筒
把听筒 放下
等会儿 再拨
通话
把听筒放下
结束
无人接听
把听封、 信纸、 笔、 邮票
开 信 封
写 信
贴 邮 票
把 信 投 入 到 邮 箱
第一章 如何用计算机解决问题
算法的概念:
解决问题的 方法和步骤 就是算法。
算法可以用多种方法来描述
4.算法的发现


世界上最早的算法 已知最早的算法是写在考古学家发掘出来的粘 土板上的,这些粘土板的年代大约是在公元前3000 年~公元前1500年,也就是大约3500~5000年以前。 考古学家是在美索布达米亚(伊拉克)靠近古代城 市巴比伦的地方发现的,那地方离现在的巴格达不 远。巴比伦人发明了六十进制系统,我们现在关于 时、分、秒的记法和关于角度的记法就是从他们那 里学来的。 为了做数学用表,巴比伦人需要解代数方程, 他们的做法是写个求解的“算法”。在算法中,基 本上都是对实际数目的计算。在算法的最后还写上 一句短语,这个短语可以粗略地翻译为“这是一个 过程”。这也是最早出现的程序设计语言的记号。
相关文档
最新文档