2019-2020学年高中数学新同步苏教版必修3学案:第1章1.3基本算法语句Word版含解析

文档属性

名称 2019-2020学年高中数学新同步苏教版必修3学案:第1章1.3基本算法语句Word版含解析
格式 zip
文件大小 380.2KB
资源类型 教案
版本资源 苏教版
科目 数学
更新时间 2020-04-09 22:16:05

图片预览

文档简介

1.3 基本算法语句
学 习 目 标
核 心 素 养
1.经历将具体问题的流程图转化为伪代码的过程.(重点)
2.理解用伪代码表示的算法语句——赋值语句、输入输出语句、条件语句、循环语句,进一步体会算法的基本思想.(重点、难点、易混点)
3.通过本节的学习,使学生理解一个基本的运算过程应是:在运算中构造、设计、选择一个合理的算法,以提高效果.
4.通过本节的学习,进一步提高逻辑思维能力.
1.从问题中抽象出算法,培养学生的数学抽象素养.
2.将流程图转化为伪代码,进一步提高学生的逻辑推理素养.
1.伪代码
伪代码是介于自然语言和计算机语言之间的文字和符号.
2.赋值语句
在伪代码中,赋值语句用符号“←”表示,“x←y”表示将y的值赋给x,其中x是一个变量,y是一个与x同类型的变量或表达式.
思考1:赋值语句两边的量可以互换吗?
[提示] 赋值符号“←”左右两边不能对换,如A←B和B←A的含义及运行结果是不同的.A←B表示用B的值替换A原来的值,B←A表示用A的值替换B原来的值.
思考2:赋值语句可以给代数式赋值吗?
[提示] 赋值语句不能给代数式赋值,如“a2b-ab2←0”是错误的,赋值语句只能给变量赋值.如果赋值符号左边的变量原来没有值,则执行赋值语句后获得一个值;如果已有值,则执行赋值语句后赋值符号右边的值将代替该变量原来的值,即将原来的值“冲掉”.
思考3:赋值语句能进行代数式演算吗?如化简、因式分解等.
[提示] 不能用赋值语句进行代数式的演算(如化简、因式分解等).如y←x2-1←(x-1)(x+1)是不能实现的.在一个赋值语句中,只能给一个变量赋值,不能出现两个或多个“←”.但一个变量可以多次赋值.
3.输入、输出语句
输入语句“Read a,b”表示输入的数据依次送给a,b,输出语句“Print_x”表示输出运算结果x.
4.条件语句
(1)条件语句表达算法的选择结构.
(2)条件语句的一般形式为:
If A Then
B
Else
C
End If
其中A表示判断的条件,B表示满足条件时执行的操作内容,C表示不满足条件时执行的操作内容,End_If表示条件语句结束.
(3)数学中的分类讨论、分段函数在算法中一般用条件语句.
5.循环语句
(1)循环语句的定义
循环语句用来实现算法中的循环结构.
(2)当型循环语句
它表示当所给条件中成立时,执行循环体部分,然后再判断条件p是否成立.如果p仍成立,那么再次执行循环体,如此反复,直到某一次条件p不成立时退出循环,其一般格式为:,其特点是先判断,后执行.
(3)直到型循环语句
它表示先执行循环体部分,然后再判断所给条件p是否成立,如果p不成立,那么再次执行循环体部分,如此反复,直到所给条件p成立时退出循环,其一般格式为,其特点是先执行,后判断.
(4)“For”语句
当循环的次数已经确定时用“For”语句,其一般形式为.
思考4:三种循环语句的区别与联系是什么?
[提示] 
当型语句
直到型语句
For语句
执行
步骤
当所给条件成立时,执行循环体部分,然后再判断条件是否成立.如果仍然成立,那么再次执行循环体,如此反复,直到某一次条件不成立时退出循环
先执行循环体部分,然后再判断所给条件是否成立.如果不成立,那么再次执行循环体部分.如此反复,直到所给条件成立时退出循环
同当型
语句
适用
范围
循环次数不能确定
循环次数不能确定
循环次数
已经确定
1.赋值语句“x←x+1”的正确解释为________.
①x的值与x+1的值可能相等;
②将原来x的值加上1后,得到的值替换原来x的值;
③这是一个错误的语句;
④此表达式经过移项后,可与x←x-1功能相同.
② [赋值符号与数学中的等号的意义是不完全相同的.x←x+1在数学中不成立,但在赋值语句中将x的原值加1,再赋给x.②正确.①③④不正确.]
2.下面这个伪代码的输出结果是________.

25 [将A的原值10加15后再赋给A,10+15=25.]
3.下列语句,当输入x←-3.2时,输出的结果为________.

3.2 [因为x=-3.2<0,所以执行“Then”引导的语句,故输出-(-3.2)=3.2.]
4.下面伪代码输出的结果是________.

0 [当S←5+4+3+2=14时,n←2-1=1,此时S<15继续执行循环体,则S←5+4+3+2+1=15,n←1-1=0,此时S=15,循环结束,输出0.]
赋值语句
【例1】 (1)运行如图所示的伪代码,输出的结果是________.

(2)阅读下列两个伪代码,回答问题:
① ②
上述两个伪代码最后输出的x和y值分别为________.
(1)3 (2)4,4 3,3 [(1)a←1,b←2,把1与2的和赋给a,即a←3,输出的结果为3.
(2)伪代码①中的x←y是将y的值4赋给x,赋值后x的值变为4,y为4;②中y←x是将x的值3赋给y,赋值后y的值为3,x为3.]
赋值号与数学中的等号的意义是不完全相同的,赋值号左边的变量如果原来没有值,则执行赋值语句后,获得一个值,如果已有值,则执行该语句,以赋值号右边表达式的值代替该变量的原值,即将原值“冲掉”.如:N←N+1,在数学中是不成立的,但在赋值语句中,意思是将N的原值加1再赋给N.
1.设A←10,B←20,则可以实现A,B的值互换的伪代码是________.
① ② ③ ④
③ [①中伪代码执行后A=B=10;②中伪代码执行后A=B=10;③中伪代码执行后A=20,B=10;④中伪代码执行后A=B=10.]
2.执行下面的伪代码的结果是X=________,Y=________,Z=________.

2 2 2 [X,Y,Z的初值分别为1,2,3,执行语句X←Y后,X=2,执行语句Y←X后,Y=2,执行语句Z←Y后,Z=2,所以X,Y,Z的值都是2.]
输入、输出语句
【例2】 下列给出的输入、输出语句正确的是________.
①输入语句Read a;b;c;
②输入语句Read x=3;
③输出语句Print A=4;
④输出语句Print 20,32.
④[①Read语句可以给多个变量赋值,变量之间用“,”隔开;②Read语句中只能是变量,而不能是表达式;③Print语句中不用赋值号“=”;④Print语句可以输出常量、表达式的值.]
1.输入语句要求输入的值只能是具体的常数,不能是变量或表达式(输入语句无计算功能),若输入多个数,各数之间应用逗号“,”隔开.
2.输出语句可以输出常量,变量或表达式的值(输出语句有计算功能)或字符,伪代码中引号内的部分将原始呈现.
3.写出下列伪代码的结果.

若输入2,1,则输出的结果为________.
5 [若输入2,1,即a←2,b←1.所以22+=4+1=5.
输出的结果为a2+=5.]
4.下面算法的功能是求所输入的两个正数的平方和,已知最后输出的结果为3.46,试据此将算法补充完整.

1.5 x+x [由于算法的功能是求所输入的两个正数的平方和,所以S=x+x,又由最后输出的结果是3.46,所以3.46=1.12+x,所以x=2.25.又x2是正数,所以x2=1.5.]
条件语句
【例3】 已知函数f(x)=编写一个伪代码,对每输入的一个x值,都得到相应的函数值,并画出其对应的流程图.
[解] 解决分段函数求值的问题,编写伪代码要用条件语句,画流程图要用选择结构,可以先用自然语言,设计解决问题的算法,再转化为流程图和伪代码.
用变量x,y分别表示自变量和函数值.步骤如下:
S1 输入x值.
S2 判断x的范围,若x≥0,则用函数y←x2-1求函数值,否则用y←3x2-8求函数值.
S3 输出y的值.
流程图如图所示:
伪代码如下图所示:

1.书写条件语句时,为了清晰和方便阅读,通常将Then部分和Else部分缩进书写.
2.在条件语句中,Then部分和Else部分是可选的,但语句的出口“End If”不能省.
提醒:(1)条件语句的执行顺序与流程图中的选择结构的执行顺序一致,首先对条件进行判断,满足条件则执行该条件下的语句,不满足条件则执行下一步.
(2)If代表条件语句的开始,End If代表条件语句的结束,这两点是判断一个语句是否为条件语句的关键.
5.根据如下所示的伪代码,当输入的a,b分别为log23,log32时,最后输出的c的值为________.

log32 [本伪代码的算法功能是输出a,b中较小的数.因为a=log23>1,b=log32<1,所以b6.根据下面的算法语句,画出其对应的流程图.
伪代码:

[解] 伪代码中有条件语句,相应流程图用选择结构,解决的是一个两段函数求值的问题,用一个判断框就可以了.
流程图如图所示:
循环语句
[探究问题]
1.循环结构流程图有几种形式?它们有何区别?可以相互转化吗?
[提示] 循环结构流程图有两种形式;当型循环和直到型循环,它们可以相互转化,先判断后执行的是当型循环,先执行后判断的是直到型循环.
2.循环语句有几种形式?它们可以相互转化吗?
[提示] 循环语句有三种形式,如下表所示,当型循环语句和直到型循环语句可以相互转化,一般地,“For”语句可以改写成“While”语句,但“While”语句不一定能够改写成“For”语句.
形式
当型循环语句
直到型循环语句
“For”语句
格式
While p
 循环体
End While
Do
 循环体
Until p
End Do
For I From“初值”To“终值”Step“步长”
 循环体
End For
【例4】 下列是求1+3+5+…+99的伪代码,读伪代码完成问题:

(1)伪代码中的循环语句是________型的循环语句;
(2)将伪代码用另一类型的循环语句来实现.
思路点拨:用“While”语句描述的循环语句是当型循环语句,用“Do”语句描述的循环语句是直到型循环语句,从上面的伪代码可以看出,这是一个用当型循环语句写的伪代码,此伪代码输出的是1+3+5+…+99的值.
[解] (1)当
(2)改成直到型循环语句如下:

1.本例中的伪代码能用“For”语句实现吗?
思路点拨:本例中伪代码输出的是1+3+5+…+99的值,循环次数用步长确定,故可以用“For”语句实现.
[解] 本例中的伪代码能用“For”语句实现,用“For”语句表示如下:

2.设计算法,求1-3+5-7+…-99+101的值,用伪代码表示.
[解] 循环语句有While语句、Until语句和For语句,采用不同语句,其算法描述不同.
用“For”语句表示:

用“While”语句表示:

1.累加求和、累乘求积问题一般都要应用循环语句来设计伪代码,应用循环语句时,关键是设计循环条件及循环体.
2.用循环语句编写伪代码的步骤
(1)给循环语句中的变量赋初始值.
(2)找出在伪代码中反复执行的部分,即循环体.
(3)找出控制循环的条件:其中直到型循环是直到条件符合,即判断“Y”时,退出循环,条件不符合,即判断“N”时,继续循环;当型循环是当条件符合,即判断“Y”时,继续循环,条件不符合,即判断“N”时,退出循环.
提醒:(1)“For”语句中的I是用于控制算法中循环次数的变量,起计数作用,它有初值和终值,是循环开始和结束时循环变量的值.
(2)在“For”语句中,如果省略“Step步长”,那么重复循环时,I每次增加1.
1.本节课的重难点是用三种语句书写算法.
2.(1)条件结构的适用范围:
已知分段函数的解析式求函数值的问题,须用条件语句书写伪代码,当条件的判断有两个以上的结果时,可以选择条件结构嵌套去解决.
(2)解此类问题的步骤:
①构思出解决问题的一个算法(可用自然语言).
②画出流程图,形象直观地描述算法.
③根据流程图编写伪代码,即逐步把框图中的算法步骤用算法语句表达出来.
3.两种循环语句的相同点是:(1)进入循环前的语句相同;(2)循环体相同;(3)输出部分相同.
不同点是:(1)循环条件的位置不同;(2)循环条件不同.
1.下面的伪代码输出的结果是(  )

A.25   B.27   C.9   D.11
D [由题意知,
x←6,
y←3,
x←6÷3=2,
y←4×2+1=9,
x+y=2+9=11.
所以输出11.]
2.判断输入的数x是否为正数,若是,输出它的平方,若不是,输出它的相反数,则横线上应填(  )

A.x<0 B.x≤0
C.x>0 D.x≥0
B [由题意知,x为正数时,输出x2,x不是正数,即x≤0时,输出-x.观察伪代码知“If”执行的是输出相反数,故应填x≤0.]
3.下列伪代码输出的结果为________.

C=34 [循环结构中,循环体的作用是将前两个数相加,得到后一个数;如果没有循环条件的限制,伪代码中的循环结构将依次给A,B赋值为:1,1,2,3,5,8,13,21,34,…,
其中第1,3,5,…个数为A的值,第2,4,6,…个数为B的值,可见B=21时,循环结束,此时,A=13,所以C=A+B=34.]
4.下面的语句运行后输出的结果为________.

25 [第一次循环:x=1,x=12;
第二次循环:x=2,x=22;
第三次循环:x=5,x=52=25,25≥20,循环终止.
故输出x的值为25.]
5.给出如图所示的流程图,写出相应的伪代码.
[解] 这是一个顺序结构的流程图,过程清楚,用输入,输出语句和赋值语句,编写伪代码即可.
相应的伪代码如下所示.