高中数学第1章算法初步1.4算法案例教学案苏教版必修
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[典例 ] 在平面直角坐标系中作出函数 y= 2x 和 y=4-x 的图象,根据图象判断方程 2x
=4- x 的解的范围,再用二分法求这个方程的近似解 (误差不超过 0.001),写出这个算法的
伪代码,并画出流程图. [解 ] 在同一坐标系内作出函数
y= 2x 和 y= 4- x 图象如图: 由图象
解析:逐一验证,由题意,① 12- 7= 5 是 5 的倍数;② 21- 10= 11 不是 3 的倍数;③
34- 20= 14 是 2 的倍数;④ 47- 7= 40 是 40 的倍数.故①③④正确.
答案:①③④
6.下列伪代码的运行结果是 ________.
a←120 b← 252 While a≠ b If a> b
x,y, z 的不定方程组
m=3x+ 2, m= 5y+ 3, m= 7z+ 2
的正整数解.
2.欧几里得辗转相除法 (1)含义:求两个正数 a, b(a> b)的最大公约数的方法,称为欧几里得辗转相除法. (2)步骤:计算出 a÷ b 的余数 r ,若 r= 0,则 b 即为 a, b 的最大公约数;若 r≠ 0,则把 前面的除数 b 作为新的被除数,把余数 r 作为新的除数,继续运算,直到余数为 0,此时的 除数即为 a, b 的最大公约数. 3.两个常用函数 (1)Mod(a, b)表示 a 除以 b 所得的余数. (2)Int( x)表示不超过 x 的最大整数. [点睛 ] 辗转相除法的理论根据是:由 a= nb+ r? r= a- nb,得 a, b 与 b, r 有相同的公约数.
[层级一 学业水平达标 ] 37 1. Int 5 = ________; Int(- 11.2)= ________.
答案: 7 -12 2.用辗转相除法求 85 和 51 的最大公约数时,需要做除法的次数为 答案: 3
________ .
马鸣风萧萧整理
》》》》》》》》》积一时之跬步 臻千里之遥程《源自文库《《《《《《《《《《《
∴ 324,243,270的最大公约数为 27.
答案: 27
4.下列程序输出的 n 的值是 __________.
马鸣风萧萧整理
》》》》》》》》》积一时之跬步 臻千里之遥程《 《《《《《《《《《《《
j← 1 n← 0 While j≤ 11 j←j+ 1 If Mod j, 4 = 0 Then
n← n+ 1 End If j←j+ 1 End While Print n
3. 84 和 32 的最小公倍数是 ________. 解析:先求 84 和 32 的最大公约数. 84= 32× 2+20, 32= 20+ 12, 20= 12+ 8, 12= 8+ 4, 8= 4×2. 故 84 和 32 的最大公约数是 4. 所以 84 和 32 的最小公倍数为 84×32÷ 4= 672. 答案: 672 4.下列伪代码运行的一个结果是 ________. m← 2 While Mod( m,4)≠2 or
可知方程 2x= 4-x 有一根在 [1,2]内.
伪代码为:
马鸣风萧萧整理
流程图如下:
》》》》》》》》》积一时之跬步 臻千里之遥程《 《《《《《《《《《《《
a←1 b← 2 c← 0.001 While | a- b| ≥ c x0← a+ b /2 f a ← 2a+a-4 f x0 ← 2x0+x0- 4 If f x0 = 0 Then Exit While End If If f a f x0 < 0 Then b← x0 Else a← x 0 End If End While Print x0
马鸣风萧萧整理
伪代码:
》》》》》》》》》积一时之跬步 臻千里之遥程《 《《《《《《《《《《《
流程图:
(1)求三个正整数 a, b, c 的最大公约数的步骤是:
①先求其中两个数的最大公约数,如求 a,b 的最大公约数,用 m 表示;②再求 m 与第
三个数 c 的最大公约数,用 n 表示;③ n 就是三个数 a, b, c 的最大公约数.
(36, 12)→ (24,12)→ (12,12),∴输出 12.
答案: 12
7.试写出求三个正整数 a, b, c 的最大公约数的算法语句.
马鸣风萧萧整理
》》》》》》》》》积一时之跬步 臻千里之遥程《 《《《《《《《《《《《
解:先写出的伪代码是求正整数 a, b 的最大公约数,设最大公约数用 b 表示,然后再
(1)利用二分法求方程的近似解时,要根据二分法的步骤写出算法的每一步,再利用循 环结构写出近似解即可.
a+ b (2)要注意 正好是方程根的处理.
2 [活学活用 ] 在平面直角坐标系内作出 y= x2 和 y= 2x 的图象,并判断方程 x2= 2x 在 (- 1,0)内有无实 根.若有,求出这个实根的近似值 (误差不超过 0.01).写出这个算法的
马鸣风萧萧整理
写出求正整数 b,c 的最大公约数的伪代码,并输出其最大公约数,用
b 表示,可用“当型”
语句写出伪代码.
所求的算法语句 (即伪代码 )如下:
Read a, b, c While Mod a, b ≠ 0
r← Mod a, b a← b b← r End While While Mod c, b ≠ 0 r← Mod c, b c← b b← r End While Print b
》》》》》》》》》积一时之跬步 臻千里之遥程《 《《《《《《《《《《《
1.4 算法案例
1.符号 Int( x)和 Mod( a,b)的含义是什么? 2.“孙子问题”相当于怎样的数学问题? 1. 欧几里得辗转相除法是解决什么问题的数学方法,它的一般步骤是什么?
[新知初探 ]
1.“孙子问题”相当于求关于
伪代码: m← 2 While Mod( m,15) ≠ 0 or
Mod( m+ 1,17)≠ 0 or Mod( m+ 2,19)≠ 0 m← m+ 1 End While Print m, m+ 1, m+ 2
马鸣风萧萧整理
》》》》》》》》》积一时之跬步 臻千里之遥程《 《《《《《《《《《《《
答案: 3
5.m 是一个正整数,对两个正整数 a,b,如果 a- b 是 m 的倍数,则称 a,b 对模 m 同
余,用符号 a≡b(Modm)表示,则下列各式中:
① 12≡7(Mod5);② 21≡ 10(Mod3);③ 34≡ 20(Mod2);④ 47≡7(Mod40) .
正确的有 __________ . (填序号 )
② x1-x2= e;
③ x1<e< x2;
④ | x1-x2| < e.
答案:④
3. 324,243,270的最大公约数为 ______.
解析: 324=243× 1+81,243= 81× 3+0,
故 324 和 243 的最大公约数为 81.
又 270= 81×3+27,81= 27× 3+ 0,
ab (2)整数 a 和 b 的最小公倍数为 a, b的最大公约数 ,即 (a,b 的最大公约数 )×(a, b 的最
小公倍数 )= a· b.
[活学活用 ]
求 396 和 270 的最小公倍数.
解:根据最大公约数和最小公倍数的关系可知这两个数的最小公倍数为
=5 940.
利用二分法求方程的近似解
396× 270÷ 18
[层级二 应试能力达标 ]
1.下列格式中正确的是 ________.
① Mod(2,3)= 3; ② Mod(3,2)= 2;
③ Mod(2,3)= 1;
④ Mod(3,2)= 1.
答案:④
2.用二分法求方程的近似解,精确度为 e,则循环结构的终止条件是 ______. (填序号 )
① | x1- x2| > e;
Mod( m,5)≠ 3 or Mod( m,7)≠ 3 m← m+ 1 End While Print m
解析:此伪代码的功能是求
m= 4x+ 2, m= 5x+ 3, m= 7x+ 3
的最小正整数,
∴ m= 38. 答案: 38 5.已知如图所示的流程图 (其中的 m,n 为正整数 ):
马鸣风萧萧整理
孙子剩余定理的应用 [典例 ] 有 3 个连续的正整数,其中最小的能被 15 整除,中间的能被 17 整除,最大的 能被 19 整除,画出求满足要求的一组三个连续正整数的流程图,并写出伪代码. [解 ] 设这三个数分别为 m,m+ 1,m+ 2,则 m 满足的条件是 Mod(m,15)= 0 且 Mod( m +1,17)=0 且 Mod( m+ 2,19)= 0. 流程图:
》》》》》》》》》积一时之跬步 臻千里之遥程《 《《《《《《《《《《《
(1)这个算法的功能是什么?
(2)当 m= 286, n= 91 时,运行的结果是什么?
解: (1)这个算法的功能是用辗转相除法求两个正整数的最大公约数.
(2)∵ 286=91× 3+ 13,91= 13× 7,
∴ 286 与 91 的最大公约数是 13.故运行结果为 13.
8.写出用二分法求方程 x3- 2x- 3= 0 在区间 [1,2]内的一个近似解 (误差不超过 0.001)的 一个算法,并画出流程图.
解:本题考查了利用二分法算法求解方程近似解的方法. 伪代码如下:
马鸣风萧萧整理
》》》》》》》》》积一时之跬步 臻千里之遥程《 《《《《《《《《《《《
流程图如图所示:
[小试身手 ] 1. Int(5) = ________;
2 Int 3 = ________;
Int( - 3.14)= ________.
马鸣风萧萧整理
》》》》》》》》》积一时之跬步 臻千里之遥程《 《《《《《《《《《《《
答案: 5 0 - 4 2.用辗转相除法求 32 和 14 的最大公约数时,需要做 ________次除法运算. 答案: 3 3.用符号表示 m 被 7 除后余 2 为________. 答案: Mod( m,7)=2
a←a-b Else
b← b- a End If End While Print a
解析:此伪代码的功能是求两个正整数的最大公约数.
a, b 的值依次是:
(120,252)→ (120,132)→ (120,12)→ (108,12)→ (96,12)→ (84,12)→ (72,12)→ (60,12)→ (48,12)→
解决此类问题的方法就是从 m= 2 开始,对每一个正整数逐一检验,当 件时,结束循环,输出 m.
m 满足所有已知条
[活学活用 ] 下面一段伪代码的功能是 ________. m← 2 While Mod( m,2)≠1 or
Mod( m,3)≠ 2 or Mod( m,5)≠ 3 m← m+ 1 End While Print m 解析:由代码含义可知, m 满足的条件是除以 2 余 1,除以 3 余 2,除以 5 余 3,又 m 逐个增大,故输出的 m 是满足条件的最小正整数.
马鸣风萧萧整理
》》》》》》》》》积一时之跬步 臻千里之遥程《 《《《《《《《《《《《
伪代码. 解: 作出 y= x2 和 y= 2x 的图象如图.由图可知方程 x2= 2x 在 (- 1,0)内有且只有一个实根
x0. 设 f(x)= x2- 2x,∵ f(- 1)> 0 , f(0)< 0,∴以上结论正确. 求这个实根误差不超过 0.01 的近似值的伪代码如下:
m= 2x+ 1,
答案:求关于 x, y, z 的不定方程组 m= 3y+ 2, m= 5z+ 3
欧几里得辗转相除法的应用
的最小正整数解
[典例 ] 用辗转相除法求 396 和 270 的最大公约数,并设计算法,画出流程图,写出伪 代码.
[解 ] 396= 270+ 126,270= 2× 126+ 18,126= 18× 7, 因此 396 和 270 的最大公约数为 18. 算法如下: S1 a← 396 S2 b← 270 S3 如果 Mod( a, b)≠ 0,那么转 S4,否则转 S7 S4 r← Mod( a, b) S5 a← b b← r S6 转 S3 S7 输出 b