练习:水仙花数问题,如153=1^3+5^3+3^3,分析它应满足什么条件才能使用此方法?
任务二、如何描述算法?
分析:1、用自然语言描述算法
⑴自然语言——人们日常生活中使用的语言。
⑵此种语言的特点:通俗语易懂,缺乏直观性和简洁,且易产生歧义。
使用此种语言的注意事项:描述要求尽可能精确,详尽。
示范:用自然语言描述凯撒密码的原理
第1步:输入26个英文字母,它们分别对应1~26个数学。
第2步:令a=1,k=3,n=26。
第3步:使a的取值范围为1≤a≤26,F(a)=(a+k) mod n,转第5步。
第4步:a=a+1,转第3步。
第5步:输出F(a)相对应的数字。
第6步:把数学转化成相当的字母,输出字母。
第7步:累计字母出现顺序,转第4步。
练习:现有一串字母“PROGRAM”给它加密,请设计算法,用自然语言描述。
分析:2、用流程图描述算法
⑴特点:描述算法形象、直观,容易理解。
⑵流程图符
示范:
探究:用流程图表示1+2+3+……+100=?
分析:.3、用伪代码描述算法
特点:描述的算法简、易懂,修改容易,容易转化为程序语言代码。
探究:分析课本第9页算法描述
第一个条件:y mod 4=0
判断闰年的条件:⑴y不能被100整除;⑵y能被400整除且y能被400整除。
判断不是闰年的条件:⑴y mod 4=0 且y mod 100=0,但y不能被400整除;⑵y不能被4整除。
表示条件判断语句 表示循环处理语句:
IF 条件 THEN 执行语句一 Do While 条件循环语句
ELSE执行语句二 Loop
END IF
条件语句中可以包含多个子语句
实践:用表格比较自然语言、流程图和伪代码3种描述方法的优缺点。
方法 特性 | 自然语言 | 流程图 | 伪代码 |
直观清晰 | |||
确定性 | |||
烦琐程度 | |||
是否容易修改 | |||
通俗易懂 |
总结:
学生进一步理解什么是算法,知道算法的多样性;能够对设计的算法做简装的评价;掌握利用自然语言、流程图和伪代码来描述算法,通过分析对比,我们知道了三种描述方法的优劣。用伪代码描述的算法简洁、易懂,修改起来比较容易,并且很容易转化为程序语言代码,但它没有流程图描述的算法直观,一旦出现逻辑错误也不便排查。
教师资格证考试栏目为您推荐: