(
课件网) 信息技术 必修1 :数据与计算 第三章 算法基础 3.2 算法及其描述 分析问题 设计算法 编写程序 调试运行程序 计算机程序解决问题的过程 知识回顾 第三章 算法基础 3.2 算法及其描述 3.1.2 计算机解决问题的过程 【活动】利用Magic Scratch 绘图 画图效果: 分析问题: 1、边长相等 2、内角为60度 设计算法: 开始 设置画笔 (颜色、大小、位置) 移动画笔20步长 向右旋转画笔60度 满6次? 否 结束 是 第三章 算法基础 3.2 算法及其描述 第三章 算法基础 3.1体验计算机解决问题的过程 【活动】利用Magic Scratch 绘图 画图效果: 分析问题: 1、边长相等 2、内角为60度 3、外一个比内一个边长增加x 设计算法: 开始 设置画笔 (颜色、大小、位置) 移动画笔x步长 向右旋转画笔60度 满6次? 否 是 任务:尝试利用魔法编程在六边形基础上修改绘出上图 设置值x=10 X的值增加10 满10次? 结束 是 否 3.1.2 计算机解决问题的过程 3.2.1 算法 第三章 算法基础 3.2 算法及其描述 【算法】就是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的又穷集合。 算法的特征: (1)有穷性 (2)确定性 (3)数据输入 (4)数据输出 (5)可行性 12元 8元 5元 3.2.2 算法的描述 第三章 算法基础 3.2 算法及其描述 【问题案例】老师打算花100块钱购买一些笔记本奖励表现优秀的同学,请班长小明帮忙,小明决定买以下三种单价分别为12元、8元、5元的文具,请问可以买多少本? (要求:每样至少有1个,刚刚花完100元) 3.2.2 算法的描述 一、描述算法的常用方法 1.用自然语言描述算法 就是用人们日常所用的语言,如:汉语、英语等来描述算法。 第三章 算法基础 3.2 算法及其描述 3.2.2 算法的描述 一、描述算法的常用方法 2.用流程图描述算法 是用程序框图来描述算法的一种表示方法。使用流程图描述算法,让人感到算法的流程描述清晰简洁。流程图的基本图形及其功能如下表所示。 流程图的基本图形及其功能 第三章 算法基础 3.2 算法及其描述 3.2.2 算法的描述 2.用流程图描述算法 是用程序框图来描述算法的一种表示方法。使用流程图描述算法,让人感到算法的流程描述清晰简洁。流程图的基本图形及其功能如下表所示。 一、描述算法的常用方法 k=12x+8y+5z k=100 z<=16 y<=10 x<=7 3.2.2 算法的描述 一、描述算法的常用方法 3.用伪代码描述算法 就是用介于自然语言和计算机语言之间的文字和符号来描述算法。 t=0 for x in range(1,8): for y in range(1,11): for z in range(1,17): if x*12+y*8+z*5==100: {t=t+1; 输出解的个数t和三个整数x,y,z} 第三章 算法基础 3.2 算法及其描述 算法描述的方法 优势 不足 自然语言表示法 用人们日常所用的语言,比较容易掌握。 当算法中含有多分支或循环操作较多时很难清晰地表示出来,由于自然语言的歧义性,容易导致算法执行的不确定性。 流程图表示法 用程序框图来描述,流程描述清晰简洁。 所占篇幅较大,由于允许使用流程线,过于灵活,不受约束。 伪代码表示法 用介于自然语言和计算机语言之间的文字和符号来描述,书写方便,格式紧凑,易于理解,便于向计算机程序设计语言过渡。 由于编程语言的种类繁多,伪代码的语句不容易规范,有时会产生误解。 3.2.2 算法的描述 三种算法描述方法的比较 第三章 算法基础 3.2 算法及其描述 3.2.2 算法的描述 二、三种基本控制结构 这三种基本控制结构的主要作用是: (1)顺序结构表示程序中的各操作是按照它们出现的先后顺序执行的。 (2)选择结构表示程序的处理步骤出现了分支,它需要根据某一特定的条件选择其中的一个分支执行。选择结构有单选择、双选择和多选择三种形式。 ... ...