已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用心 爱心 专心 第十一章第十一章 算法初步算法初步 章节结构图章节结构图 1111 1 1 算法的含义及程序框图算法的含义及程序框图 一一 复习指导复习指导 在数学上 现代意义上的 算法 通常是指可以用计算机来解决的某一类问题的程序 或步骤 算法的特点是程序性 明确性 有限性 普适性 不唯一性 程序框图又称流程图 是一种用规定的图形 指向线及文字说明来准确 直观地表示 算法的图形 要掌握各个图形的形状 作用及使用规则 算法的基本逻辑结构有三种 即顺序结构 条件分支结构和循环结构 其中顺序结构 是最简单的结构 也是最基本的结构 循环结构必然包含条件结构 无论怎样复杂的逻辑 结构 都可以通过这三种结构来表达 条件分支结构主要用在一些需要依据条件进行判断的算法中 如分段函数的求值 数 据的大小关系等问题中 循环结构主要用在一些有规律的重复计算的算法中 如累加求和 累乘求积等问题中 在循环结构中 要注意根据条件 设计合理的计数变量 累加变量等 特别要注意循环结构中条件的表述要恰当 精确 以免出现多一次循环或少一次循环的情 况 构成程序框的图形符号及其作用构成程序框的图形符号及其作用 程序框名称功能 起止框 表示一个算法的起始和结束 是任何流程图不可少 的 输入 输出框 表示一个算法输入和输出的信息 可用在算法中任何 需要输入 输出的位置 处理框 赋值 计算 算法中处理数据需要的算式 公式等分 别写在不同的用以处理数据的处理框内 用心 爱心 专心 判断框 判断某一条件是否成立 成立时在出口处标明 是 或 Y 不成立时标明 否 或 N 二二 解题方法指导解题方法指导 例例 1 1 看下面的四段话 其中是解决问题的算法的是 A 把高一 5 班的同学分成两组 高个子参加篮球赛 矮个子参加拔河比赛 B 把高一 5 班的同学分成两组 身高达到 170cm 的参加篮球赛 不足 170cm 的参加拔 河比赛 C 把a b的值代入 a b x 求方程ax b的解 D 数清海滩上有多少粒沙子 例例 2 2 试写出判断直线Ax By C 0 与圆 x a 2 y b 2 r2 r 0 的位置关系的算 法 例例 3 3 写出用 二分法 求方程x2 2 0 x 0 的近似解的算法 例例 4 4 给计算机编写一个算法 输入一个自变量x的值 求分段函数 0 0 2 2 xx xx xf的函数值 例例 5 5 画出求使 1 2 3 n 2010 成立的最小自然数n的值的程序框图 三三 体会与感受体会与感受 1 重点知识 2 问题与困惑 3 经验问题梳理 1111 2 2 基本算法语句基本算法语句 一一 复习指导复习指导 为了实现算法中三种基本的逻辑结构 各种程序设计语言都包括下列算法语句 输入 用心 爱心 专心 语句 输出语句 赋值语句 条件语句和循环语句 1 赋值语句 在表述一个算法时 经常要引入变量 并赋给该变量一个值 用来表明赋给某一个变 量一个具体的确定的值的语句叫做赋值语句 赋值语句中的格式是 变量名 表达式 其中 赋值语句中的 号 称为赋值号 在使用赋值语句中需要注意的问题 赋值号左边只能是变量 不能是表达式 赋值号 左右不能对换 不能用赋值语句进行代数式的运算 一个赋值语句只能给一个变量赋值 不能给两个或多个变量赋值 赋值号与数学中的等号的意义不同 2 输入语句 在某些算法中 变量的初值要根据情况经常地改变 一般我们把程序和初始数据分开 每次算题时 不改变程序部分 只输入相应的初始数据即可 这个过程的程序语句用 输 入语 句 控制 输入语句的一般格式是 变量名 input 输入提示语 输入语句要求输入的值只 能是具体的常数 不能是函数 变量或表达式 但是可以输入单个或多个字符 用引号引 起来 3 输出语句 任何求解问题的算法 都要把求解的结果 输出 所以在任何程序语言中必须有 输 出语句 来控制输出 输出语句的一般格式是 print io 2 输出内容 注意 1 多个变量值倒序输出 2 disp 语句也表示输出 4 条件语句 条件语句是处理条件分支结构的算法语句 条件语句的一般格式是 if 表达式 语句序列 1 else 语句序列 2 end 5 循环语句 有规律的重复计算或者在程序中需要对某些语句进行重复的执行 这样就需要用循环 语句进行控制 循环语句的一般格式是 for 循环变量 初值 步长 终值 循环体 end 或者是 while 表达式 循环体 end 注意 1 for 循环语句 是在循环次数已知时使用的循环 在循环的次数未知时不 能使用 2 while 循环语句 是在未知循环次数的条件下进行的循环 也可以在循环次 数已知的循环中使用 二二 解题方法指导解题方法指导 例例 1 1 已知圆锥底面的半径和高 设计一个程序 求圆锥的表面积 用心 爱心 专心 例例 2 2 读下列两个程序回答问题 上述两个程序的运行结果是 1 2 上述两个程序的第三行有什么区别 1 x 3 y 4 x y x y 2 x 3 y 4 y x y x 例例 3 3 编写一个程序 使得任意输入的 3 个整数按从大到小的顺序输出 例例 4 4 分别用两种循环语句写出求 12 22 1002的值的程序 例例 5 5 根据下面的程序框图 写出其对应的程序 并说明该程序的功能 用心 爱心 专心 三三 体会与感受体会与感受 1 重点知识 2 问题与困惑 3 经验问题梳理 6 例例 题题 解解 析析 第十一章第十一章 算法初步算法初步 11 111 1 算法的含义及程序图算法的含义及程序图 例例 1 1 分析 A 何为高个子 何为矮个子 标准不明确 C 当a 0 时公式是无效的 D 海滩上的沙子数目太多 步骤超出了合理的范围 所以不可取 只有 B 符合算法的三个要求 所以答案是 B 解 解 选 B 说明 本题考查算法的几个要求 如明确性 有限性 普适性等 例例 2 2 分析 直线与圆有三种位置关系 若圆心到直线的距离d r 则直线与圆相离 若d r 则直线与圆相切 若d r 则直线与圆相交 因此 我们可先求出圆心到直线的 距离d 然后与r比较 解 解 第一步 输入圆心的坐标 a b 直线方程的系数A B C和半径r 第二步 计算z1 Aa Bb C 第三步 计算z2 A2 B2 第四步 计算 2 1 z z d 第五步 如果d r 则直线与圆相离 第六步 如果d r 则直线与圆相切 第七步 如果d r 则直线与圆相交 说明 本题可将二 三 四步合并为一步计算 22 BA CBbAa d设计算法一定要做 到以下要求 1 写出的算法必须能解决一类问题 并且能够重复使用 2 要使算法尽量简单 步骤尽量少 3 要保证算法正确 且计算机能够执行 例例 3 3 分析 令f x x2 2 则方程x2 2 0 的解就是函数f x 的零点 二分法的基本思想是 把函数f x 的零点所在的区间 a b 满足f a f b 0 一分为二 得到 a m 和 m b 根据 f a f m 0 是否成立 取出零点所在的 区间 a m 或 m b 仍记为 a b 对所得的区间 a b 重复上述步骤 直到包含零点 的区间 a b 足够小 则 a b 内的数可以作为方程的近似解 解 解 第一步 令f x x2 2 给定精确度d 第二步 确定区间 a b 满足f a f b 0 第三步 取区间中点 2 ba m 第四步 若f a f m 0 则包含零点的区间为 a m 否则 含零点的区间为 m b 将新得到的含零点的区间仍记为 a b 第五步 判断 a b 的长度是否小于d或f m 是否等于 0 若是 则m是方程的近似 解 否则 返回第三步 例例 4 4 分析 此函数为分段函数 如果用程序框图来表示该算法 必然要用到条件分支 7 结构 解 解 该算法用自然语言表述为 S1 输入x的值 S2 进行判断 如果x 0 则f x x 2 否则f x x2 S3 输出结果 用程序框图可表示为 说明 说明 画程序框图的规则如下 1 使用标准的图形符号 2 框图一般按从上到下 从左到右的方向画 3 除判断框 外 大多数流程图符号只有一个进入点和一个退出点 判断框具有超过一个退出点的唯一 符号 4 判断框分两大类 一类判断框 是 与 否 两分支的判断 而且有且仅有两个 结果 另一类是多分支判断 有几种不同的结果 5 在图形符号内描述的语言要非常简练 清楚 例例 5 5 分析 由于是累加求和问题 因此应使用循环结构来设计程序框图 解 解 程序框图为 或 8 说明 说明 循环结构的关键是要理解 累加变量 S和 n n 1 每循环一次 S和n都 发生变化 注意比较上面两图的区别 11 211 2 基本算法语句基本算法语句 例例 1 1 分析 根据圆锥的表面积等于底面面积与侧面面积的和 我们可以先算出底面面 积 侧面面积 然后将两个面积相加 即可求解 解 解 r input radius h input high l sqrt r r h h A pi r 2 B pi r l S A B print io 2 S 或者 disp S 或者 S 说明 说明 在 Scilab 程序语言中 圆周率 写成 pi 乘号 一定不能省略 除 法用符号 不能写成分数的形式 起到隔行 限制输出的作用 若不加分号 则在屏幕上输出该变量 disp 用来输出数值型变量时不能添加分号 例例 2 2 分析 对于一个变量 我们可以进行多次赋值 赋值号左边的变量如果原来没有 值 则执行赋值语句后获得一个值 如果已有值 则执行语句后 以赋值号右边表达式的 值代替该变量原来的值 即将原值 冲掉 解 解 上述两个程序的运行结果是 1 4 4 2 3 3 程序 1 中的第三行是将y的值赋给x 赋值后x的值变为 4 y的值不变 程序 2 中的第三行是将x的值赋给y 赋值后y的值变为 3 x的值不变 说明 说明 可见 用上述程序不能实现两个变量的互换 如果用赋值语句实现两个变量的 互换 方法是引进第三个变量 如要交换a b的值 只需c a a b b c 例例 3 3 分析 我们用a b c表示输入的三个整数 比较三个整数 把最大的整数存入 变量a中 次大的整数存入b中 最小的整数存入c中 算法步骤为 S1 输入三个整数a b c S2 将a与b比较 如果a b 交换它们的值 S3 将a与c比较 如果a c 交换它们的值 第 2 步和第 3 步后 a中存储的已经是最大的整数 S4 将b与c比较 如果b c 交换它们的值 第 4 步后 b中存储的是次大的整数 c中存储的是最小的整数 S5 按顺序输出a b c 解 解 a input a b input b c input c if a b t a a b b t end if a c t a a c c t end if b c t b b c c t end 9 print 2 c b a 说明 说明 此题用到的条件语句的格式为 if 表达式 语句序列 1 end 另外 用 print 输出语句时 多个变量值倒序输出 例例 4 4 分析 若用 while 语句 循环终止条件为 i 100 用 for 语句其步长为 1 终止 为 100 解 解 while 语句 for 语句 i 1 sum 0 while i 100 sun sum i 1 i i 1 end print 2 sun sum 0 for i 1 1 100 sum sum i end print 2 sum 说明 说明 1 利用 for 循环语句时 要分清步长 变量初值 终值 必须分清循环次数是 否确定若确定 两种语句均可使用 若不确定 用 while 语句 但两种循环都以 end 结 束 2 在 for 循环语句中 循环变量的值与终值比较 结果为真时执行循环体 结果为假 时终止循环 3 在 while 循环语句中 当表达式的结果为真时 执行循环体 结果为假时终止循 环 例例 5 5 分析 我们可采用试验的办法 当S p时 n 1 2 1 S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年畜牧师资格考试重点串讲
- 2026年失智老人生活护理模拟题
- 2026年幼儿园幼儿防护知识
- 2026年小学生宇宙与地球知识
- 2026年保险精算师模拟试卷
- 2026年中学政治教师招聘笔试题集
- 2026年应急队员考试模拟题解
- 2026年软件设计师考试重点难点突破
- 2026年小学二年级下册语文词语默写专项过关卷含答案
- 2026年小学六年级下册数学口算速算技巧专项训练卷含答案
- 辅导员基础知识试题及答案
- (完整版)韦氏儿童智力测试试题
- 我是爸妈的小帮手课件
- 部编版语文八年级下册第五单元游记散文阅读练习(含解析)
- 公路隧道开挖施工技术规范
- 现代全口义齿学知到章节答案智慧树2023年浙江大学
- x社区房屋修缮工程监理规划
- 行星轮系的效率
- 国家开放大学电大本科《离散数学》2023-2024期末试题及答案(试卷代号:1009)
- 高标准农田建设示范工程安全应急预案
- 农村卫生旱厕建设技术规范征求
评论
0/150
提交评论