必修3 算法初步.docx

上传人:b****8 文档编号:30463613 上传时间:2023-08-15 格式:DOCX 页数:29 大小:235.09KB
下载 相关 举报
必修3 算法初步.docx_第1页
第1页 / 共29页
必修3 算法初步.docx_第2页
第2页 / 共29页
必修3 算法初步.docx_第3页
第3页 / 共29页
必修3 算法初步.docx_第4页
第4页 / 共29页
必修3 算法初步.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

必修3 算法初步.docx

《必修3 算法初步.docx》由会员分享,可在线阅读,更多相关《必修3 算法初步.docx(29页珍藏版)》请在冰豆网上搜索。

必修3 算法初步.docx

必修3算法初步

必修3算法初步

§1.1-2算法的含义、程序框图

重难点:

通过实例体会算法的思想,了解算法的含义,了解算法的主要特点(有限性和确定性);能用流程图表示顺序、选择、循环这三种基本结构,能识别简单的流程图所描述的算法.

考纲要求:

①了解算法的含义、了解算法的思想.

②理解程序框图的三种基本逻辑结构:

顺序、条件分支、循环.

经典例题:

阅读下列伪代码,并指出当

时的计算结果:

⑴reada,b

(2)reada,b(3)reada,b

X←a+ba←a+ba←a+b

y←a-bb←a-bb←a-b

a←(x+y)/2a←(a+b)/2a←(a-b)/2

b←(x-y)/2b←(a-b)/2b←(a+b)/2

Printa,bPrinta,bPrinta,b

a=,b=a=,b=a=,b=

当堂练习:

1.算法的有穷性是指()

A.算法必须包含输出B.算法中每个操作步骤都是可执行的

C.算法的步骤必须有限D.以上说法均不正确

2

用电水壶烧一壶开水,壶中还有一点儿水,若规定盖上水壶盖是最后一步,则插上电源是()

A.第二步  B.第三步 C.最后第二步D.最后第三步

3.下列哪个不是算法的特征()

A.抽象性 B.精确性     C.有穷性    D.惟一性

4.以下给出的各数中不可能是八进制数的是()

A.312  B.10110  C.82  D.7457

5.下面对算法描述正确的一项是()

A.算法只能用自然语言来描述  B.算法只能用图形方式来表示

C.同一问题可以有不同的算法  D.同一问题的算法不同,结果必然不同

6.下列各数中最小的数是()

A.

B.

C.

D.

7.算法共有三种逻辑结构,即顺序结构,条件结构和循环结构,下列说法正确的是()

A.一个算法只能含有一种逻辑结构B.一个算法最多可以包含两种逻辑结构

i=1

s=0

WHILEi<=4

s=s*x+1

i=i+1

WEND

PRINTs

END

(第10题)

C.一个算法必须含有上述三种逻辑结构 D.一个算法可以含有上述三种逻辑结构的任意组合

a=1

b=3

a=a+b

b=a-b

PRINTa,b

(第9题)

8.运行以下程序时,WHILE循环体内语句的执行次数是()

n=0

whilen<100

n=n+1

n=n*n

wend

printn

end

(第8题)

A.5  B.4  C.3D.9

9.计算机执行下面的程序段后,输出的结果是()

A.1,3  B.4,1 C.0,0D.6,0

10.当

时,下面的程序段结果是()

A.3  B.7  C.15D.17

11.在一个算法中,算法的流程根据条件可以有几种不同的流向()

A.1    B.2   C.3    D.多于3个

12.对赋值语句的描述正确的是()

①可以给变量提供初值②将表达式的值赋给变量

③可以给一个变量重复赋值④不能给同一变量重复赋值

A.①②③    B.①②    C.②③④    D.①②④

13.给出以下四个问题,

①x,输出它的相反数.②求面积为6的正方形的周长.③求三个数a,b,c中输入一个数的最大数.④求函数f(x)=

的函数值.其中不需要用条件语句来描述其算法的有()

A.1个      B.2个    C.3个      D.4个

14.用秦九韶算法计算当x=5时多项式f(x)=5

+4

+3

+2

+x+1的值.

15.一堆形状大小完全相同的珠子,其中只有一粒重量比其他的轻,某同学利用科学的算法,两次利用天平找出了这棵最轻的珠子,则这堆珠子至多有   粒.

16.用冒泡排序法从小到大排列数据{13,5,9,10,7,4},需要经过 趟排序才能完成.

17.循环结构描述算法,在画出算法流程图之前需要确定三件事:

(1)确定循环变量和;

(2)确定;(3)确定.

18.某电信部门规定:

拨打市内电话时,如果通话时间不超过3分钟,则收取通话费0.2元,如果通话时间超过3分钟,则超过部分以每分钟0.1元收取通话费(通话不足1分钟时按1分钟计),试设计一个计算通话费用的算法.要求写出算法.

19.画出方程

的根的流程图.

20.设计算法求

的值.要求画出程序框图.

21.已知函数

编写一程序求函数值.

§1.3算法基本语句

重难点:

经历将具体问题的流程图转化为伪代码的过程;理解用伪代码表示的基本语句――输入语句、输出语句、赋值语句、条件语句、循环语句,进一步体会算法的基本思想.

考纲要求:

①理解几种基本算法语句――输入语句、输出语句、赋值语句、条件语句、循环语句的含义.

x=1

y=1

WHILEx<=4

Z=0

WHILEy<=x+2

Z=Z+1

y=y+1

WEND

PRINTZ

x=x+1

y=1

WEND

END    第3题

经典例题:

意大利数学家菲波拉契,在1202年出版的一书里提出了这样的一个问题:

一对兔子饲养到第二个月进入成年,第三个月生一对小兔,以后每个月生一对小兔,所生小兔能全部存活并且也是第二个月成年,第三个月生一对小兔,以后每月生一对小兔.问这样下去到年底应有多少对兔子?

试画出解决此问题的程序框图,并编写相应的程序.

当堂练习:

1.下边程序运行后的输出结果为()

A.17    B.19    C.21    D.23

i=1

WHILEi<8

i=i+2

s=2×i+3

WEND

PRINTs

END

(第1)

a=1

b=2

c=3

a=b

b=c

c=a

PRINTa,b,c

END

(第2题)

 

2.右边程序运行的结果是()

A.1,2,3  B.2,3,1  C.2,3,2  D.3,2,1

3.上右程序运行后输出的结果为()

A.3456  B.4567 C.5678   D.6789

4右图给出的是计算

的值的

一个程序框图,其中判断框内应填入的条件是()

A.i>10  B.i<10  C.i>20  D.i<20

5.算法:

S1输入n;

S2判断n是否是2,若n=2,则n满足条件,

若n>2,则执行S3;

s3依次从2到n一1检验能不能整除n,若不能整除n,

则输出n.

则输出n是()

A.质数  B.奇数  C.偶数 D.约数

6.读程序                     

甲:

INPUTi=1乙:

INPUTI=1000

S=0S=0

WHILEi≤1000DO

S=S+iS=S+i

i=i+lI=i一1

WENDLoopUNTILi<1

PRINTSPRINTS

ENDEND

对甲乙两程序和输出结果判断正确的是()

A.程序不同结果不同B.程序不同,结果相同 C.程序相同结果不同D.程序相同,结果相同

7.阅读下列程序:

输入x;

ifx<0,theny:

elseifx>0,theny:

elsey:

=0;

输出y.

如果输入x=-2,则输出结果y为()

A.3+

    B.3-

     C.

-5   D.-

-5

8.x=5

y=6

PRINTxy=11

END

上面程序运行时输出的结果是()

A.xy≠11  B.11  C.xy=11   D.出错信息

9.下面的问题中必须用条件结构才能实现的个数是()

(1)已知三角形三边长,求三角形的面积;

(2)求方程ax+b=0(a,b为常数)的根;

(3)求三个实数a,b,c中的最大者;

(4)求1+2+3+…+100的值。

A.4个   B.3个   C.2个    D.1个

10.两个数5671、10759的最大公约数是()

A.46 B.53 C.28   D.71

11.二进制数111011001001

(2)对应的十进制数是()

A.3901B.3902C.3785D.3904

12.下面的代码的算法目的是()

10 Reada,b

20 r←mod(a,b)

30 Ifr=0thenGoto80

40 Else

50 a←b

60 b←r

70 Goto20

80 Printb

A.求x,y的最小公倍数B.求x,y的最大公约数

C.求x被y整除的商D.求y除以x的余数

13.若连续函数

在区间

内单调,且

在区间

内()

A.至多有一个根B.至少有一个根C.恰好有一个根D.不确定

INPUT“n=”;n

i=1

sum=0

WHILEi<=n

sum=sum+I

i=i+1

PRINTsum

END

(第16题)

x=5

y=-20

IFx<0THEN

x=y-3

PRINTx

ELSE

y=y+3

PRINTy

ENDIF

END (第15题)

14.已知算法如下:

S=0;

输入n;

fori:

=1tondo

begin

S=S+2*i;

end.

输出S.

若输入变量n的值为3,则输出变量S的值为;

若输出变量S的值为30,则变量n的值为  .

15.看右边程序运行后,输出的结果为______________..

16.算法程序:

计算1+2+3+…+n的值(要求可以输入任意大于1的正自然数)中,请填上空缺的部分.

17.用秦九韶算法求n次多项式

,当

时,求

需要算乘方、乘法、加法的次数分别为    .

18.青年歌手电视大赛共有10名选手参加,并请了12名评委,在计算每位选手的平均分数时,为了避免个别评委所给的极端分数的影响,必须去掉一个最高分和一个最底分后再求平均分.试设计一个算法,解决该问题,要求画出程序框图,写出程序(假定分数采用10分制,即每位选手的分数最高分为10分,最底分为0分).

19.目前高中毕业会考中,成绩在85~100为“A”,70~84为“B”,60~69为“C”,60分以下为“D”.编制程序,输入学生的考试成绩(百分制,若有小数则四舍五入),输出相应的等级.

20.给出30个数:

1,2,4,7,……,其规律是:

第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,依此类推.要计算这30个数的和,现已给出了该问题算法的程序框图(如图所示),(I)请在图中判断框内

(1)处和执行框中的

(2)处填上合适的语句,使之能完成该题算法功能;(II)根据程序框图写出程序.

 

21.有10个互不相等的数,写出找出其中一个最大数的算法和程序.

§1.4算法初步单元测试

1.右边的程序框图(如图所示),能判断任意输

入的数x的奇偶性:

其中判断框内的条件是()

A.m=0B.x=0

C.x=1D.m=1

2.算法的过程称为“数学机械化”,数学机械化的最大优点

是可以让计算机来完成,中国当代数学家在这方面研究处于

世界领先地位,为此而获得首届自然科学500万大奖的是()

A.袁隆平 B.华罗庚

C.苏步青 D.吴文俊

a=0

j=1

WHILEj<=5

a=(a+j)MOD5

j=j+1

WEND

PRINTa

END

(第4题)

3.算法

S1m=a

a=1

b=3

a=a+b

b=a-b

PRINTa,b

(第5题)

S2若b

S3若c

S4若d

S5输出m,则输出m表示()

A.a,b,c,d中最大值

B.a,b,c,d中最小值

C.将a,b,c,d由小到大排序

D.将a,b,c,d由大到小排序

4.如图程序运行后输出的结果为()

A.50B.5C.25D.0

5.计算机执行下面的程序段后,输出的结果是()

A.1,3    B.4,1   C.0,0   D.6,0

6.用“辗转相除法”求得459和357的最大公约数是()

A.3B.9C.17D.51

7.算法的三种基本结构是()

A.顺序结构、模块结构、条件结构B.顺序结构、循环结构、模块结构

C.顺序结构、条件结构、循环结构D.模块结构、条件结构、循环结构

8.下面为一个求20个数的平均数的程序,在横线上应填充的语句为()

A.i>20      B.i<20      C.i>=20    D.i<=20

9.用秦九韶算法计算多项式

时的值时,需要做乘法和加法的次数分别是()

A.6,6   B.5,6 

C.5,5    D.6,5

10.给出以下一个算法的程序框图(如图所示),该程序框图的

功能是()

A.求输出a,b,c三数的最大数

B.求输出a,b,c三数的最小数

C.将a,b,c按从小到大排列

D.将a,b,c按从大到小排列

 

11.若输入8时,则下列程序执行后输出的结果是.

12.下左程序运行后输出的结果为_________.

x=5

y=-20

IFx<0THEN

x=y-3

ELSE

y=y+3

ENDIF

PRINTx-y;y-x

END

(第12题)

j=1

n=0

WHILEj<=11

j=j+1

IFjMOD4=0THEN

n=n+1

ENDIF

j=j+1

WEND

PRINTn

END    (第16题)

INPUTt

IFt<=4THEN

c=0.2

ELES

c=0.2+0.1(t-3)

ENDIF

PRINTc

END

(第11题)

 

13.用直接插入排序法对:

7,1,3,12,8,4,9,10进行从小到大排序时,第四步得到的一组数为:

__. 

14.求方程

的近似根,要先将它近似地放在某两个连续整数之间,则应当在区间上.

15.学了算法你的收获有两点,一方面了解我国古代数学家的杰出成就,另一方面,数学的机械化,能做许多我们用笔和纸不敢做的有很大计算量的问题,这主要归功于算法语句的         .

16.上右程序输出的n的值是____________.

17.函数y=

请设计算法流程图,要求输入自变量,输出函数值.

18.某电信部门规定:

拨打市内电话时,如果通话时间不超过3分钟,则收取通话费0.2元,如果通话时间超过3分钟,则超过部分以每分钟0.1元收取通话费(通话不足1分钟时按1分钟计),试设计一个计算通话费用的算法.要求写出算法,画出程序框图,编写程序.

19.把“五进制”数

转化为“十进制”数,再把它转化为“八进制”数.

20.给定一个年份,写出该年是不是闰年的算法,程序框图和程序.

21.已知正四棱锥的底面边长为3,高为4,求正四棱锥的体积和表面积,写出算法的伪代码,并画出相应图.

 

参考答案

第1章算法初步

§1.1-2算法的含义、程序框图

经典例题:

3,5;3,-2.5;-5,1.5

当堂练习:

1.C;2.C;3.D;4.C;5.C;6.D;7.D;8.B;9.B;10.C;11.C;12.A;13.B;14.18556;15.9;16.5;17.初始条件,循环体,终止条件;

18.用c(单位:

元)表示通话费,t(单位:

分钟)表示通话时间,

则依题意有

算法步骤如下:

第一步,输入通话时间t;第二步,如果t≤3,那么c=0.2;否则令c=0.2+0.1(t-3);第三步,输出通话费用c.

19.20.

 

INPUT“x=”;x

IFx<-1THEN

y=x^2-1

ELSE

IFx>1THEN

y=SQR(3*x)+3

ELSE

y=ABS(x)+1

ENDIF

ENDIF

PRINT“y=”;y

END(第21题)

 

(第19题)

21.

 

§1.3算法基本语句

经典例题:

根据题意可知,第一个月有1对小兔,第二个月有1对成年兔子,第三个月有两对兔子,从第三个月开始,每个月的兔子对数是前面两个月兔子对数的和,设第N个月有两F对兔子,第N-1个月有S对兔子,第N-2个月有Q对兔子,则有F=S+Q,一个月后,即第N+1个月时,式中变量S的新值应变第N个月兔子的对数(F的旧值),变量Q的新值应变为第N-1个月兔子的对数(S的旧值),这样,用S+Q求出变量F的新值就是N+1个月兔子的数,依此类推,可以得到一个数序列,数序列的第12项就是年底应有兔子对数,我们可以先确定前两个月的兔子对数均为1,以此为基准,构造一个循环程序,让表示“第×个月的I从3逐次增加1,一直变化到12,最后一次循环得到的F”就是所求结果.流程图和程序如下:

s=0

k=1

max=0

min=10

DO

INPUTx

s=s+x

IFmax<=xTHEN

max=x

ENDIF

IFmin>=xTHEN

min=x

ENDIF

k=k+1

LOOPUNTILk>12

s1=s-max-min

a=s1/10

PRINTa

END(第18题程序)

S=1

Q=1

I=3

WHILEI<=12

F=S+Q

Q=S

S=F

I=I+1

WEND

PRINTF

END

(经典例题)

 

当堂练习:

1.A;2.C;3.A;4.A;5.A;6.B;7.B;8.C;9.C;10.B;11.C;12.B;13.D;14.12,5;15.-17;16.WEND;17.0,n,n;

18.由于共有12位评委,所以每位选手会有12个分数,我们可以用循环语句来完成这12个分数的输入,同时设计累加变量求出这12个分数的和,本问题的关键在于从这12个输入分数中找出最大数与最小数,以便从总分中减去这两个数.由于每位选手的分数都介于0分和10分之间,去我们可以先假设其中的最大数为0,最小数为10,然后每次输入一个评委的分数,就进行一次比较,若输入的数大于0,就将之代替最大数,若输入的数小于10,就用它代替最小数,依次下去,就能找出这12个数中的最大数与最小数,循环结束后,从总和中减去最大数与最小数,再除以10,就得到该选手最后的平均数.

程序框图如上图所示.

19.I=1

WHILEI=1

INPUT“shuruxueshengchengjia=”;a

IFa<60THEN

i=1

p=1

s=0

WHILEi<=30

s=s+p

p=p+i

i=i+1

WEND

PRINTa

END

(第20题程序)

PRINT“D”

ELSE

IFa<70THEN

PRINT“C”

ELSE

IFa<85THEN

PRINT“B”

ELSE

PRINT“A”

ENDIF

ENDIF

ENDIF

INPUT“INPUT1,INPUT2”;I

WEND

END(第19题)

20.该算法使用了当型循环结构,因为是求30个数的和,故循环体应执行30次,其中i是计数变量,因此判断框内的条件就是限制计数变量i的,故应为

.算法中的变量p实质是表示参与求和的各个数,由于它也是变化的,且满足第i个数比其前一个数大

,,第

个数比其前一个数大i,故应有

.故

(1)处应填

(2)处应填

21.S1:

输入一个数,放在MAX中

S2:

i=1

S3:

输入第1个数,放入x中

S4:

若x>MAX,则MAX=z

S5:

i=i+1

S6:

若i≤9,返回S3继续执行,否则停.

 

§1.4算法初步单元测试

1.A;2.D;3.B;4.D;5.B;6.D;7.C;8.A;9.A;10.B;11.0.7;12.22,-22;13.[13712]84910;14.(1,2);15.循环语句;16.3;

17.

INPUTt

IFt<=3THEN

c=0.2

ELSE

c=0.2+0.1(t-3)

ENDIF

PRINTc

END

(第18题程序)

18.解我们用c(单位:

元)表示通话费,t(单位:

分钟)表示通话时间,

则依题意有

算法步骤如下:

第一步,输入通话时间t;第二步,如果t≤3,

那么c=0.2;否则令c=0.2+0.1(t-3);

第三步,输出通话费用c;

程序框图如图所示

19.解:

20.S1:

输入一个年份x

S2:

若z能被100整除,则执行S3否则执行S4

S3:

若x能被400整除,则x为闰年,否则x不为闰年

S4:

若x能被4整除,则x为闰年,否则x不为闰年

INPUTx

IFx=100k(k是正整数)THEN

IFx=400k(k是正整数)THEN

PRINT“x是闰年”

ELSE“x不是闰年”

END

ELSEIFx=4k(k是正整数)THEN

PRINT“x是闰年”

ELSE“x不是闰年”

END

 

 

21.

 

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 表格类模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1