打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
算法初步

算法初步

 

教学目的:

了解算法的含义,能用自然语言描述算法。

理解设计流程图表达解决问题的过程,了解算法和程序语言的区别;理解流程图的三种基本逻辑结构,会用流程图表示算法。

重点:算法与流程图的含义。

难点:算法在实际问题中的应用。

 

二、知识要点:

(一)算法的概念

算法实际上就是解决一类问题的一种程序性方法,其特征为: 概括性、逻辑性、有穷性、不唯一性和普遍性.

 

(二)程序框图

利用程序框图表示算法,具有直观、形象的特点,能更清楚地展现算法的逻辑结构.

 

(三)算法的三种基本逻辑结构

顺序结构、选择结构、循环结构

 

(四)基本算法语句

1、输入语句:Read

2、输出语句:Print

3、赋值语句:变量

表达式

4、条件语句:处理条件分支逻辑结构的算法语句.主要用if语句,其一般格式如下:

    If  条件A Then

语句B      

Else

    语句C

    End  If

    条件语句的另一种格式为:

  If  条件 Then 语句

    End  If

5、循环语句:

1For语句

For  变量I  From “初值”To“终值”Step“步长”

End  For

2 While语句

While  语句A

End  While

3)注意while循环(当型)和until循环(直到型)两种形式.

    while循环的特点是先判断再执行循环.即当条件满足时,执行循环体.

    until循环的的特点是先执行循环再判断是否满足条件。

 

(五)算法结构图见下:

 

   

 

三、基础训练

1执行下列算法:

    其中循环10S的值是________,程序运行结束时S的值是____________

解:循环10S的值是100;程序运行结束时S的值是

2、如果执行上面的程序框图,那么输出的

                

解:

3、(广东文7、艺术理6)下面左图是某县参加2007年高考的学生身高条形统计图,从左到右的各条形表示的学生人数依次记为A1A2、…、A10(如A2表示身高(单位:cm)(150155)内的学生人数).右图是统计左图中身高在一定范围内学生人数的一个算法流程图.现要统计身高在160~180cm(含160cm,不含180cm)的学生人数,那么在流程图中的判断框内应填写的条件是                     

解:

4、用“冒泡法”给数列

按从大到小进行排序时,经过第一趟排序后得到的新数列为                           

答案:

  注意是从大到小

5、用“秦九韶算法”计算多项式

,当x=2时的值的过程中,要经过       次乘法运算和       次加法运算。

答案:

6、以下属于基本算法语句的是                           

INPUT语句;②PRINT语句;③IF-THEN语句;④DO语句;⑤END语句;

WHILE语句;⑦END IF语句。

答案:  基本算法语句的种类

7

化成四进位制数的末位是____________

答案:

,末位是第一个余数,
注意:余数自下而上排列

 

【典型例题】

1以下是计算

的程序框图,请写出对应的程序

解: i=1

sum=0

WHILE i<=100

sum=sum+i

i=i+1

WEND

PRINT sum

END

 

2、函数

,写出求函数的函数值的程序。

解:INPUT  “x=”x

IF x>=0 and x<=4  THEN

    y=2

x

ELSE IF x<=8   THEN

    y=8

ELSE  y=2*12-x

END IF

END IF

PRINT y

END

 

3、用辗转相除法或者更相减损术求三个数

的最大公约数.

解: 324=243×181   

243=81×30   

324 243的最大公约数为 81

    135=81×154    

81=54×127     

54=27×20

    81 135的最大公约数为27

    所以,三个数 324243135的最大公约数为 27

另法

为所求。

 

4、意大利数学家菲波拉契,在1202年出版的一书里提出了这样的一个问题:一对兔子饲养到第二个月进入成年,第三个月生一对小兔,以后每个月生一对小兔,所生小兔能全部存活并且也是第二个月成年,第三个月生一对小兔,以后每月生一对小兔.问这样下去到年底应有多少对兔子? 试画出解决此问题的程序框图,并编写相应的程序.

解: 根据题意可知,第一个月有

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

 

5、把“五进制”数

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

解:

   

 
 

 

6、用秦九韶算法求多项式

时的值。

解:

   

    

  

7、某市公用电话(市话)的收费标准为:

分钟之内(包括
分钟)收取
元;超过
分钟部分按
/分钟加收费。设计一个程序,根据通话时间计算话费。

解:INPUT “通话时间”;t

   

 
 
 
 

   

   

 

   

 

 “通话费用”;c

 

8、根据条件把流程图补充完整,求

内所有奇数的和;

1)处填             2 处填                 

答案:(1

2

 

9、已知一个三角形的三边边长分别为

设计一个算法,求出它的面积。

解:第一步:取

第二步:计算

第三步:计算

第四步:输出

的值

 

10、用二分法求方程

上的近似解,精确到
,写出算法。画出流程图,并写出算法语句.

解:算法如下:


1、取

中点
,将区间一分为二

2、若

,则
就是方程的根;否则所求根
的左侧或右侧

,则
,以
代替

,则
,以
代替

3、若

,计算终止

此时

,否则转到第1

算法语句:

Input  

repeat

if

then  print 

else

if 

then 

else 

until  

print  

end

流程图:     


 

11、下面的茎叶图是某班在一次测验时的成绩,伪代码用来同时统计女生、男生及全班成绩的平均分,试回答下列问题:

1)在伪代码中,“k=0”的含义是什么?横线①处应填什么?

2)执行伪代码,输出STA的值分别是多少?

3)请分析该班男女生的学习情况、

解:1 全班32名学生中,有15名女生,17名男生、在伪代码中,根据“SS/15TT/17可以推知,“k=1”和“k=0”分别代表男生和女生;STA分别代表女生、男生及全班成绩的平均分;横线①处应填“(S+T/32

2)女生、男生及全班成绩的平均分分别为S=78T=77A77.47

3 15名女生成绩的平均分为7817名男生成绩的平均分为77、从中可以看出女生成绩比较集中,整体水平稍高于男生;男生中的高分段比女生高,低分段比女生多,相比较男生两极分化比较严重、

 

【模拟试题】

1、  阅读下边的程序框图,若输入的

100,则输出的变量
的值依次是       

2、给出下面的程序框图,那么,输出的数是               

           

1                                                               2

3在如下程序框图中,已知:

,则输出的是_________     _

3

4、程序框图如下:

4

如果上述程序运行的结果为S132,那么判断框中应填入                

5如图,该程序运行后输出的结果为                       

6、若框图所给程序运行的结果为S=90,那么判断框中应填入的关于k的判断条件是      

                    

5                                                     6

7、下边流程图给出的程序执行后输出的结果是         

8、已知函数

,以下程序框图表示的是给定x值,求其相应函数值的算法,请将该程度框图补充完整. 其中①处应填               ,②处应填                   

 

                     

7                                                                 8

9、一个算法的程序框图如右图所示,若该程序输出的结果为

,则判断框中应填入的条件是               

9

10、用冒泡法对一组数:

进行排序时,经过      趟排序后,得到这一组数:

11、三个数

的最大公约数是_________________

12、二进制数

转换成十进制数是_________________

13、下面程序运行后输出的结果为_______________

14、下面程序运行后实现的功能为_______________

 

                        

13                                                                     14

 


【试题答案】

125502500

22450

3

4

545

6

7

8

9

103.

11

  

12

 
.

13

14

按从大到小的顺序排列后再输出

 

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
2016年《南方新课堂·高考总复习》数学(理科) 第十章 第1讲 程序框图及简单的算法案例
高中数学人教A版必修3学案
高考数学文化--碾转相除法、更相减损术
高中数学算法与框图练习题练习题(含解析)
数学必修3知识点
2019年高考数学二轮复习解题思维提升专题 (10)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服