道法极课 甘肃省会宁县第一中学朱镜鸿 一、内容和内容解析 我国著名数学家吴文俊院士曾指出,数学发展中有两种思想:一种是公理化思想,另 一种是机械化思想。前者源于古希腊,后者则贯穿整个中国古代数学,这两种思想对数学 发展都曾起过巨大作用。机械化的思想就是算法的思想。 计算机能模仿人的某些机械性部分的思维功能,能按一定的规则进行逻辑判断和推理 代替人脑的部分劳动,而且能更快更精确,把人从繁重的较简单的脑力劳动中解脱出来。 但是计算机不能自主解决问题,它必须通过人输入各种程序来执行,这种程序的基础即是 算法。 算法是按照一定规则解决某一问题的明确的有限的步骤。算法具有普遍性,它解决的 是一类而不仅仅是一个具体的问题:由于算法最终要编成程序交于计算机执行,所以必须 是明确和有限的步骤,否则计算机输不出结果,也就没有意义了。 本课设置的问题大体代表了算法的三种逻辑结构,由浅入深。 二、目标和目标解析 算法可以看作是对问题的另一种意义上的解,不仅简单地包括对问题的答案、还包括获 得答案的过程、方法,而且此过程必须精确有效。因此算法的设计旨在发展学生对构造性 数学的理解和对运算意义的理解,由此培养学生程序化地进行思考的习惯从而发展学生思 维的逻辑性,条理性、精确性,并了解数学在计算机中的应用,提高对数学重要性的认识 三、教学设计 教学过程
算法概念课 甘肃省会宁县第一中学 朱镜鸿 一、内容和内容解析 我国著名数学家吴文俊院士曾指出,数学发展中有两种思想:一种是公理化思想,另 一种是机械化思想。前者源于古希腊,后者则贯穿整个中国古代数学,这两种思想对数学 发展都曾起过巨大作用。机械化的思想就是算法的思想。 计算机能模仿人的某些机械性部分的思维功能,能按一定的规则进行逻辑判断和推理, 代替人脑的部分劳动,而且能更快更精确,把人从繁重的较简单的脑力劳动中解脱出来。 但是计算机不能自主解决问题,它必须通过人输入各种程序来执行,这种程序的基础即是 算法。 算法是按照一定规则解决某一问题的明确的有限的步骤。算法具有普遍性,它解决的 是一类而不仅仅是一个具体的问题;由于算法最终要编成程序交于计算机执行,所以必须 是明确和有限的步骤,否则计算机输不出结果,也就没有意义了。 本课设置的问题大体代表了算法的三种逻辑结构,由浅入深。 二、目标和目标解析 算法可以看作是对问题的另一种意义上的解,不仅简单地包括对问题的答案、还包括获 得答案的过程、方法,而且此过程必须精确有效。因此算法的设计旨在发展学生对构造性 数学的理解和对运算意义的理解,由此培养学生程序化地进行思考的习惯从而发展学生思 维的逻辑性,条理性、精确性,并了解数学在计算机中的应用,提高对数学重要性的认识。 三、教学设计 教学过程 师 生 活 动 设 计 意 图
装有醋和酒? 解析:当然需要一个空杯子C。有两种方法:第一种是首先将A中的酒倒入〔 然后将B中的醋倒入A中,最后将C中的酒倒入B中, 这样A,B中就分 中,然后将A中的酒倒入E 目 学生自己思考并 引学生注意力 出自己的见解 ,引发学 探索的兴趣 ,通过 步 步地解决实际问题初步体会本节课将要学 的算法的思想
设 置 情 境 引 入 课 题 问题 1.1:A,B 两个杯子里分别装有酒和醋,怎样可以交换,即让 A,B 里分别 装有醋和酒? 解析:当然需要一个空杯子 C。有两种方法:第一种是首先将 A 中的酒倒入 C 中,然后将 B 中的醋倒入 A 中,最后将 C 中的酒倒入 B 中,这样 A,B 中就分 别装有醋和酒;第二种是首先将 B 中的醋倒入 C 中,然后将 A 中的酒倒入 B 中,最后将 C 中的醋倒入 A 中,同样也达到了目的。 让 学 生 自 己 思 考 并 说 出 自 己 的 见 解 。 吸 引 学 生 注 意 力 , 引 发 学 生 探 索 的 兴 趣 , 通 过 一 步 一 步 地 解 决 实 际 问 题 初 步 体 会 本 节 课 将 要 学 习 的 算 法 的 思 想
之买将米时海之骚国 x-2y=-1 ⊙ 2x+y=1 从解决熟恶的二 解析:用消元法来一步步求解 识第一步:①+②×2,得5x=1 ③ 师强调在求解的时候写 ④ 解 得 精确的步骤 方程组得到启发 第五步:方程组解为 ·从而解 ,我们把这个问题推广 ,引 般的 2.2:解下列二元一次方程 组 导学生总结二 元 ax+by=c1 次 aax+bay=C2 其中a的-44≠0 方程 会 解析:类比问题2.2,用消元法来一步步求解。 步 第一步:①xs+②xb,符a-a4k=b-4:@ b2g1-92 第二步:解③,得a2-a4 般解法。 步地解 第三步:②Xa-0×a,得a6-a4》=46-a9④ 第 四 ④ y=99-a a12-a261 类问题的想法 x=49-492 第五步:方程组解为 a-a4
探 索 实 践 建 构 知 识 问题 2.1:如何来解这个二元一次方程组呢? ① ② 解析:用消元法来一步步求解 第一步:①+②×2,得 . ③ 第二步:解③,得 . 第三步:②-①×2,得 . ④ 第四步:解④ , 得 . 第五步:方程组解为 师:这是我们熟悉的一个具体的二元一次方程组,我们把这个问题推广一 下,对于任意的一个二元一次方程组我们如何求解? 2.2 : 解 下 列 二 元 一 次 方 程 组 其中 . 解析:类比问题 2.2,用消元法来一步步求解。 第一步:①× b2+②×b1,得 ③ 第二步:解③,得 . 第三步:②×a1-①×a2,得 ④ 第四步:解④ , 得 . 第五步:方程组解为 教 师 强 调 在 求 解 的 时 候 写 出 精 确 的 步 骤 , 解 决 后 , 引 导 学 生 总 结 二 元 一 次 方 程 组 的 一 般 解 法 。 从 解 决 熟 悉 的 二 元 一 次 方 程 组 得 到 启 发 , 从 而 解 决 一 般 的 二 元 一 次 方 程 组 , 体 会 一 步 一 步 地 解 决 一 类 问 题 的 想 法
a,。-aC a2-a4 师:从解决上述两个问题的过程来看,大家有什么样的体会?每解决一个问 题,其步骤是有限的吗?任何一个步骤是明确的吗? 一步求解的,步骤性很强。步骤是有限的、 明确的。 主要突出顺序结 觉有种程予化的 养这种程 根 替 大脑的考 惯; 其米化的时代 准确地繁复的 可 。但计算机本身是 的 要人编好程 断然后交 给计算机,计算机会按照程序执行,最终解决问题。因此我们要编好程序, 这程序的雏形其实就如我们刚刚解决的这两个问题的过程,也就是今天我们 要学习的算法。 的总 算法从字面上来看,就是计算的方法。事实上,刚开始算法确实是用 阿拉伯数字进行算术运算的过程,后来随着数学的发展,算法的概念也有所 扩充,现在,在数学中,算法通常指按照一定规则解决某一类问题的明确的 和有限的步骤。算法的优越处在于,它是解决一类问题的,比如问题2.1我 们只是解决了 元一次方程组,而问题 元一次方 在解决后调到 即 之前先解决具 数改 是,为什么要求明确利 省限的步骤呢?因为算法最终要》 序交付计算 机执行,所以步必须明确和有限, 否则计算机执行不 样的话就没有意义了。 所以我们在编算法的时候应该遵循上述原则
师:从解决上述两个问题的过程来看,大家有什么样的体会?每解决一个问 题,其步骤是有限的吗?任何一个步骤是明确的吗? 生:都是一步一步求解的,步骤性很强。步骤是有限的、明确的。 师:是的。我们感觉有种程序化的味道,其实我们就要有意识地培养这种程 序化地进行思考的习惯,因为在今天这样一个信息化的时代,计算机可以代 替人大脑的部分劳动,比如快速准确地繁复的计算,一部分逻辑判断和推理 等等。但计算机本身是不会解决问题的,所以首先需要人编好程序,然后交 给计算机,计算机会按照程序执行,最终解决问题。因此我们要编好程序, 这程序的雏形其实就如我们刚刚解决的这两个问题的过程,也就是今天我们 要学习的算法。 算法从字面上来看,就是计算的方法。事实上,刚开始算法确实是用 阿拉伯数字进行算术运算的过程,后来随着数学的发展,算法的概念也有所 扩充,现在,在数学中,算法通常指按照一定规则解决某一类问题的明确的 和有限的步骤。算法的优越处在于,它是解决一类问题的,比如问题 2.1 我 们只是解决了一个二元一次方程组,而问题 2.2 我们解决了整个二元一次方 程组,以后遇到任何一个二元一次方程组,我们只需将系数改变即可。不过 在解决某一类问题之前先解决具体问题可以给我们一些启示。还有一个问题 是,为什么要求明确和有限的步骤呢?因为算法最终要被编成程序交付计算 机执行,所以步骤必须明确和有限,否则计算机执行不了或输不出结果,这 样的话就没有意义了。 所以我们在编算法的时候应该遵循上述原则。 根 据 刚 才 的 总 结 , 让 学 生 自 己 求 解 。 主 要 突 出 顺 序 结 构
教师引导学生总结解决上述问题时的体会,然后教师总结 范例讲解巩固检测 间题31:没计一个算法求=的值。 解析:根据绝对值的定义求解。 第一步:给定a 第二步:判断4是否大于或等于0,若是,则x=a:若否,则x=-口 主要突出条 结 间思4,1:设计一个算法判断7是否为质数。 解析:质数是只能被1和自身整除的大于1的整数。所以直接的想法是分别 用2、3、4、5、6去除7,看其中有没有数可以整除7,若有,则说明7不是 质数:若没有,则说明7是质数。 第一步:用2除7,得余数1,因为余数不为0,所以2不能整除7 第二步:用3除7,得余数1,因为余数不为0,所以3不能整除7 第三步:用4除7,得余数3,因为余数不为0,所以4不能整除7 第四步:用5除7,得余数2,因为余数不为0,所以5不能整除7, 第五步:用6除7,得余数1,因为余数不为0,所以6不能整除7 因此, 7是数
教 师 引 导 学 生 总 结 解 决 上 述 问 题 时 的 体 会 , 然 后 教 师 总 结 。 范 例 讲 解 巩 固 检 测 问题 3.1:设计一个算法求 的值。 解析:根据绝对值的定义求解。 第一步:给定 . 第二步:判断 是否大于或等于 0,若是,则 ;若否,则 . 问题 4.1:设计一个算法判断 7 是否为质数。 解析:质数是只能被 1 和自身整除的大于 1 的整数。所以直接的想法是分别 用 2、3、4、5、6 去除 7,看其中有没有数可以整除 7,若有,则说明 7 不是 质数:若没有,则说明 7 是质数. 第一步:用 2 除 7,得余数 1,因为余数不为 0,所以 2 不能整除 7. 第二步:用 3 除 7,得余数 1,因为余数不为 0,所以 3 不能整除 7. 第三步:用 4 除 7,得余数 3,因为余数不为 0,所以 4 不能整除 7. 第四步:用 5 除 7,得余数 2,因为余数不为 0,所以 5 不能整除 7. 第五步:用 6 除 7,得余数 1,因为余数不为 0,所以 6 不能整除 7. 因此,7 是质数. 主 要 突 出 条 件 结 构
练习4.2:设计一个算法判断35是否为质数. 问题4.3:设计一个算法判断n(n>2)是否为质数 学生练习 ,得余数工.判断r是否为0,若是,则n不是质数:若否 则进行下一步】 第二步:用3除n,得余数r.判断r是否为0,若是,则n不是质数:若否, 则进行下一步. 第-3步:用月-2除n,得余数r.判断r是否为0,若是,则n不是质 数:若否,则进行下一步。 第 2步:用”-1除n,得余数r.判断r是否为0,若是,则n不是质数: 师引导学生 若否 n是 过程中有 .”代替的步骤是不确 看似重复的步 而且n不象 所以我们 改进在整个 述两个何 定的数, 所以 我们可以用变量1表示2~力一2的数,用一种循环的想法来写算法. 主要突出 第一步:给定整数n(n>2). 环 i除n,得到余数 第四步 增加 仍用 0是否成立若是,则n不是质数,结束算法:否则将1的值 第五步:判断1》(1)是否成立若是,则n是质数,结束算法:否则返回 第三步 让学生讨论能否简化此算法
练习 4.2:设计一个算法判断 35 是否为质数. 问题 4.3:设计一个算法判断 n(n>2)是否为质数. 解析:学生可能会仿照仿照上述两个问题用 ~ 去除 n.,然后判断余 数(设为 r)的情况.如下: 第一步:用 2 除 n,得余数 r.判断 r 是否为 0,若是,则 n 不是质数;若否, 则进行下一步. 第二步:用 3 除 n,得余数 r.判断 r 是否为 0,若是,则 n 不是质数;若否, 则进行下一步. . 第 步;用 除 n,得余数 r.判断 r 是否为 0,若是,则 n 不是质 数;若否,则进行下一步. 第 步;用 除 n,得余数 r.判断 r 是否为 0,若是,则 n 不是质数; 若否,则 n 是质数. 但问题是中间被“.”代替的步骤是不确定的.所以我们需要改进.在整个 过程中有一些看似重复的步骤,而且 n 不象上述两个例子是确定的数,所以 我们可以用变量 i 表示 ~ 的数,用一种循环的想法来写算法. 第一步:给定整数 n(n>2). 第二步:令 i=2. 第三步;用 i 除 n,得到余数 r. 第四步;判断 r=0 是否成立.若是,则 n 不是质数,结束算法;否则将 i 的值 增加 1,仍用 i 表示. 第五步;判断 i>(n-1)是否成立.若是,则 n 是质数,结束算法;否则返回 第三步. 学 生 练 习 教 师 引 导 学 生 尝 试 着 写 出 步 骤 , 让 学 生 讨 论 能 否 简 化 此 算 法 。 主 要 突 出 循 环 结 构
今天我们学习了算法,知道了在数学中,算法通常指按照一定规则解决某一 总结提炼提高能力 明确的和有限的步我们设计了个算法,地体会到工算法的层次 分明。 云可以看作 对 种意义 的答案 的过程、 而且此 组织学生讨论这节课的收获 P5.1,2 布置作业探究延续
总 结 提 炼 提 高 能 力 今天我们学习了算法,知道了在数学中,算法通常指按照一定规则解决某一 类问题的明确的和有限的步骤。我们设计了几个算法,也体会到了算法的层次 分明。算法可以看作是对问题的另一种意义上的解,不仅简单地包括对问题 的答案、还包括获得答案的过程、方法,而且此过程必须精确有效。编算法 的过程也是我们程序化地进行思考的过程,这使我们的思维更有逻辑性,条 理性、精确性。所以课下请大家多思考,勤练习。 组 织 学 生 讨 论 这 节 课 的 收 获 。 布 置 作 业 探 究 延 续 P5.1,2