第一章算法初步§1.3.pdfVIP

  • 3
  • 0
  • 约5.15千字
  • 约 5页
  • 2020-11-23 发布于天津
  • 举报
§1.3 算法案例 课时目标 通过三种算法案例:辗转相除法与更相减损术,秦九韶算法,进位制,进 一步体会算法的思想,提高算法设计水平,体会中国古代数学对世界的贡献. 1.辗转相除法 (1) 辗转相除法,又叫欧几里得算法,是一种求两个正整数的最大公约数的古老而有效 的算法. (2) 辗转相除法的算法步骤 第一步,给定两个正整数 m , n. 第二步,计算 m 除以 n 所得的余数 r. 第三步, m =n , n = r. 第四步,若 r = 0 ,则 m 、 n 的最大公约数等于 m;否则,返回第二步. 2 .更相减损术 第一步,任意给定两个正整数,判断它们是否都是偶数.若是,用 2 约简;若不是,执 行第二步. 第二步, 以较大的数减去较小的数, 接着把所得的差与较小的数比较, 并以大数减小数, 继续这个操作,直到所得的数相等为止,则这个数 (等数 )或这个数与约简的数的乘积就 是所求的最大公约数. 3 .秦九韶算法 n n -1 把一个 n 次多项式 f(x) = anx + an -1x +…+ a 1x +a0 改写成如下形式: n n- 1 n- 2 1 0 , (… (( a x + a )x + a )x +…+ a )x +a 求多项式的值时, 首先计算最内层括号内一次多项式的值, 即 v 1 = anx+ an- 1,然后由内 向外逐层计算一次多项式的值,即 v 2 =v 1x +a n- 2, v 3 =v 2x +a n- 3, … v n =v n -1x +a 0 这样,求 n 次多项式 f(x) 的值就转化为求 n 个一次多项式的值. 4 .进位制 进位制是人们为了计数和运算方便而约定的记数系统,“满 k 进一”就是 k 进制, k 进 制的基数是 k. 把十进制转化为 k 进制数时,通常用除 k 取余法. 一、选择题 1.下列说法中正确的个数为 ( ) (1) 辗转相除法也叫欧几里得算法; (2) 辗转相除法的基本步骤是用较大的数除以较小的数; (3) 求最大公约数的方法,除辗转相除法之外,没有其他方法; (4) 编写辗转相除法的程序时,要用到循环语句. A . 1 B . 2 C. 3 D .4 答案 C 解析 (1) 、 (2) 、 (4) 正确, (3) 错误. 2 .用更相减损术求 294 和 84 的最大公约数时,需做减法的次数是 ( ) A . 2 B . 3 C.4 D . 5 答案 C 解析 由于 294 和 84 都是偶数, 所以用 2 约简: 294 ÷2 = 147 , 84 ÷2 =42 , 又由于 147 不是偶数, 所以 147 - 42 = 105 , 105 - 42 = 63 , 63 - 42 = 21 , 42 - 21 = 21 , 故需做 4 次减法,故选 C. 3 . 1 037 和 425 的最大公约数是 ( ) A . 51 B . 17 C . 9 D . 3 答案 B 解析 ∵ 1 037 = 425 ×2 + 187 , 425 = 187 × 2 + 51 , 187 = 51 × 3 + 34 , 51 = 34 × 1 + 17, 34 = 17 ×2 , 即 1 037 和 425 的最大公约数是 17. 6 5 4 3 2 4 .用

文档评论(0)

1亿VIP精品文档

相关文档