第一章算法初步
第一章算法初步 1 / 14 第一章算法初步
一、课标要求: 1、本章的课标要求包括算法的含义、程序框图、基本算法语句,通过阅读中国古代教学中的算法案例,体会中国古代数学世界数学发展的贡献。 2、算法就是解决问题的步骤,算法也是数学及其应用的重要组成部分,是计算机科学的基础,利用计算机解决问需要算法,在日常生活中做任何事情也都有算法,当然我们更关心的是计算机的算法,计算机可以解决多类信息处理问题,但人们必须事先用计算机熟悉的语言,也就是计算能够理解的语言(即程序设计语言)来详细描述解决问题的步骤,即首先设计程序,对稍复杂一些的问题,直接写出解决该问题的程序是困难的,因此,我们要首先研究解决问题的算法,再把算法转化为程序,所以算法设计是使用计算机解决具体问题的一个极为重要的环节。 3、通过对解决具体问题的过程与步骤的分析(如二元一次方程组的求解等问题),体会算法的思想,了解算法的含义。理解程序框图的三种基本逻辑结构:顺序结构、条件结构、循环结构。理解并掌握几种基本的算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句。进一步体会算法的基本思想。 4、本章的重点是体会算法的思想,了解算法的含义,通过模仿、操作、探索,经过通过设计程序框图解决问题的过程。点是在具体问题的解决过程中,理解三种基本逻辑结构,经历将具体问题的程序框图转化为程序语句的过程,理解几种基本的算法语句。
二、编写意图与特色: 算法是数学及其应用的重要组成部分,是计算科学的重要基础。随着现代信息技术飞速发展,算法在科学技术、社会发展中发挥着越来越大的作用,并日益融入社会生活的许多方面,算法思想已经成为现代人应具备的一种数学素养。需要特别指出的是,中国古代数学中蕴涵了丰富的算法思想。在本模块中,学生将在义务教育阶段初步感受算法思想的基础上,结合对具体数学实例的分析,体验程序框图在解决问题中的作用;通过模仿、操作、探索,学习设计程序框图表达解决问题的过程;体会算法的基本思想以及算法的重要性和有效性,发展有条理的思考与表达的能力,提高逻辑思维能力。 1、结合熟悉的算法,把握算法的基本思想,学会用自然语言来描述算法。 2、通过模仿、操作和探索,经历设计程序流程图表达解决问题的过程。在具体问题的解决过程中理解程序流程图的三种基本逻辑结构:顺序结构、条件结构、循环结构。 3、通过实际问题的学习,了解构造算法的基本程序。 4、经历将具体问题的程序流程图转化为程序语句的过程,理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句,体会算法的基本思想。 5、需要注意的问题 1) 从熟知的问题出发,体会算法的程序化思想,而不是简单呈现一些算法。 2) 变量和赋值是算法学习的重点之一,因为设置恰当的变量,学习给变量赋值,是构造算法的关键,应作为学习的重点。 3) 不必刻意追求最优的算法,把握算法的基本结构和程序化思想才是我们的重点。 4) 本章所指的算法基本上是能在计算机上实现的算法。 三、教学内容及课时安排: 1.1算法与程序框图 (约2课时) 1.2基本算法语句 (约3课时) 1.3算法案例 (约5课时) 复习与小结 (约2课时) 四、评价建议
1.重视对学生数学学习过程的评价 关注学生在数学语言的学习过程中,是否对用集合语言描述数学和现实生活中的问题充满兴趣;在学习过程中,能否体会集合语言准确、简洁的特征;是否能积极、主动地发展自己运用数学语言进行交流的能力。 第一章算法初步 2 / 14 2.正确评价学生的数学基础知识和基本技能
关注学生在本章(节)及今后学习中,让学生集中学习算法的初步知识,主要包括算法的基本结构、基本语句、基本思想等。算法思想将贯穿高中数学课程的相关部分,在其他相关部分还将进一步学习算法 1.1.1算法的概念
一、教学目标: 1、知识与技能:(1)了解算法的含义,体会算法的思想。(2)能够用自然语言叙述算法。(3)掌握正确的算法应满足的要求。(4)会写出解线性方程(组)的算法。(5)会写出一个求有限整数序列中的最大值的算法。(6)会应用Scilab求解方程组。 2、过程与方法:通过求解二元一次方程组,体会解方程的一般性步骤,从而得到一个解二元一次方程组的步骤,这些步骤就是算法,不同的问题有不同的算法。由于思考问题的角度不同,同一个问题也可能有多个算法,能模仿求解二元一次方程组的步骤,写出一个求有限整数序列中的最大值的算法。 3、情感态度与价值观:通过本节的学习,使我们对计算机的算法语言有一个基本的了解,明确算法的要求,认识到计算机是人类征服自然的一各有力工具,进一步提高探索、认识世界的能力。 二、重点与难点: 重点:算法的含义、解二元一次方程组和判断一个数为质数的算法设计。 难点:把自然语言转化为算法语言。
三、学法与教学用具: 学法:1、写出的算法,必须能解决一类问题(如:判断一个整数n(n>1)是否为质数;求任意一个方程的近似解;……),并且能够重复使用。 2、要使算法尽量简单、步骤尽量少。 3、要保证算法正确,且计算机能够执行,如:让计算机计算1×2×3×4×5是可以做到的,但让计算机去执行“倒一杯水”“替我理发”等则是做不到的。 教学用具:电脑,计算器,图形计算器 四、教学设想: 1、 创设情境: 算法作为一个名词,在中学教科书中并没有出现过,我们在基础教育阶段还没有接触算法概念。但是我们却从小学就开始接触算法,熟悉许多问题的算法。如,做四则运算要先乘除后加减,从里往外脱括弧,竖式笔算等都是算法,至于乘法口诀、珠算口诀更是算法的具体体现。我们知道解一元二次方程的算法,求解一元一次不等式、一元二次不等式的算法,解线性方程组的算法,求两个数的最大公因数的算法等。因此,算法其实是重要的数学对象。 2、 探索研究 算法(algorithm)一词源于算术(algorism),即算术方法,是指一个由已知推求未知的运算过程。后来,
人们把它推广到一般,把进行某一工作的方法和步骤称为算法。 广义地说,算法就是做某一件事的步骤或程序。菜谱是做菜肴的算法,洗衣机的使用说明书是操作洗衣机的算法,歌谱是一首歌曲的算法。在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序。比如解方程的算法、函数求值的算法、作图的算法,等等。
3、 例题分析: 例1 任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数1做出判定。 算法分析:根据质数的定义,很容易设计出下面的步骤: 第一步:判断n是否等于2,若n=2,则n是质数;若n>2,则执行第二步。 第二步:依次从2至(n-1)检验是不是n的因数,即整除n的数,若有这样的数,则n不是质数;若没有这样的数,则n是质数。 这是判断一个大于1的整数n是否为质数的最基本算法。 例2 用二分法设计一个求议程x2–2=0的近似根的算法。
第一章算法初步 3 / 14 算法分析:回顾二分法解方程的过程,并假设所求近似根与准确解的差的绝对值不超过0.005,则不难设计出以下步骤: 第一步:令f(x)=x2–2。因为f(1)<0,f(2)>0,所以设x1=1,x2=2。 第二步:令m=(x1+x2)/2,判断f(m)是否为0,若则,则m为所长;若否,则继续判断f(x1)·f(m)大于0还是小于0。 第三步:若f(x1)·f(m)>0,则令x1=m;否则,令x2=m。 第四步:判断|x1–x2|<0.005是否成立?若是,则x1、x2之间的任意取值均为满足条件的近似根;若否,则返回第二步。
小结:算法具有以下特性:(1)有穷性;(2)确定性;(3)顺序性;(4)不惟一性;(5)普遍性 典例剖析: 1、基本概念题 x-2y=-1,① 例3 写出解二元一次方程组 的算法 2x+y=1② 解:第一步,②-①×2得5y=3;③ 第二步,解③得y=3/5; 第三步,将y=3/5代入①,得x=1/5 学生做一做:对于一般的二元一次方程组来说,上述步骤应该怎样进一步完善? 老师评一评:本题的算法是由加减消元法求解的,这个算法也适合一般的二元一次方程组的解法。下面写出求方程组的解的算法: 第一步:②×A1-①×A2,得(A1B2-A2B1)y+A1C2-A2C1=0;③ 第二步:解③,得; 第三步:将代入①,得。 此时我们得到了二元一次方程组的求解公式,利用此公司可得到倒2的另一个算法: 第一步:取A1=1,B1=-2,C1=1,A2=2,B2=1,C2=-1; 第二步:计算与 第三步:输出运算结果。 可见利用上述算法,更加有利于上机执行与操作。
基础知识应用题 例4 写出一个求有限整数列中的最大值的算法。 解:算法如下。 S1 先假定序列中的第一个整数为“最大值”。 S2 将序列中的下一个整数值与“最大值”比较,如果它大于此“最大值”,这时你就假定“最大值”是这个整数。 S3 如果序列中还有其他整数,重复S2。 S4 在序列中一直到没有可比的数为止,这时假定的“最大值”就是这个序列中的最大值。 学生做一做 写出对任意3个整数a,b,c求出最大值的算法。 老师评一评 在例2中我们是用自然语言来描述算法的,下面我们用数学语言来描述本题的算法。 第一章算法初步 4 / 14 S1 max=a S2 如果b>max, 则max=b. S3 如果C>max, 则max=c. S4 max就是a,b,c中的最大值。 综合应用题 例5 写出求1+2+3+4+5+6的一个算法。 分析:可以按逐一相加的程序进行,也可以利用公式1+2+…+n=进行,也可以根据加法运算律简化运算过程。 解:算法1: S1:计算1+2得到3; S2:将第一步中的运算结果3与3相加得到6; S3:将第二步中的运算结果6与4相加得到10; S4:将第三步中的运算结果10与5相加得到15; S5:将第四步中的运算结果15与6相加得到21。 算法2: S1:取n=6; S2:计算; S3:输出运算结果。 算法3: S1:将原式变形为(1+6)+(2+5)+(3+4)=3×7; S2:计算3×7; S3:输出运算结果。 小结:算法1是最原始的方法,最为繁琐,步骤较多,当加数较大时,比如1+2+3+…+10000,再用这种方法是行不通的;算法2与算法3都是比较简单的算法,但比较而言,算法2最为简单,且易于在计算机上执行操作。 学生做一做 求1×3×5×7×9×11的值,写出其算法。 老师评一评 算法1;第一步,先求1×3,得到结果3; 第二步,将第一步所得结果3再乘以5,得到结果15; 第三步,再将15乘以7,得到结果105; 第四步,再将105乘以9,得到945; 第五步,再将945乘以11,得到10395,即是最后结果。 算法2:用P表示被乘数,i表示乘数。 S1 使P=1。 S2 使i=3 S3 使P=P×i S4 使i=i+2 S5 若i≤11,则返回到S3继续执行;否则算法结束。
算法初步
第一章 算法初步
1.1.1 算法的概念
学习目标:
1.了解算法的含义,体会算法思想
2.会用自然写出判断一个数为质数的算法及用“二分法”求方程的近似解的算法.
3.通过学习,交流,谈讨归纳出算法的特点.
基础知识准备
1.在初中,对于解二元一次方程组你学过哪些方法?
2.怎样的数叫质数?什么是“二分法”?(举生活实例说明)
3.用加减消元法解二元一次方程组
⎩⎨
⎧=+-=-1
21
2y x y x 的具体步骤是什么?
问题导思:
1.写出求解一般的二元一次方程组的步骤
2.上述步骤构成了解二元一次方程组的一个算法.它是由按照一定规则解决某一类问题的基本步骤组成的. 你认为:
(1)这些步骤的个数是有限的还是无限的?
(2)每个步骤是否有明确的计算任务?
(3)算法的概念是什么?
3.按照例1设计算法的思想,你能写出判断89是否为质数的算法吗?这样写有无不足之处?
4.写出判断整数)2(>n n 是否为质数的算法.
5.写出用“二分法”求方程)0(022
>=-x x 的近似解的算法.
达标测评:
1.写出求方程0322
=--x x 的根的算法.
2.归纳算法的特步:
疑难问题卡片:
把你认为难以解决或存在疑惑的问题记录下来.。
苏教版高中数学必修三-第一章-算法初步1.2.3ppt课件
教学时要以选择结构为知识的切入点,从学生的认知水 平和所需的知识特点入手,引导学生结合学过的选择结构, 不断地观察、分析,发现选择结构与循环结构之间的对应关 系;引导学生进行流程图的比较和分析,掌握两种循环结构 的区别和联系,理解循环条件的区别,并通过实例强化对循 环结构的理解和认识;从而化解难点. 引导学生回答所提问题, 理解两种循环结构的应用条件; 通过例题与练习让学生在应用循环结构的过程中体会该种结 构的特点和作用;以强化重点.
●教学建议 学生已经学习了算法的含义、顺序结构、选择结构及简 单的赋值问题.高一学生形象思维、感性认识较强,理性思 维、抽象认识能力还很薄弱,因此教学中选择学生熟悉的, 易懂的实例引入,通过对例子的分析,使学生逐步经历循环 结构设计的全过程,学会有条理的思考问题,表达循环结构, 并整理成流程图.
在教学中,应以学生为主体,教师为主导.指导学生学 会学习.学生在一定情境中对学习材料的亲身经验和发现, 才是学生学习的最有价值的东西.在传授知识的同时,必须 设法教给学生好的学习方法,让他们“会学习”.通过本节 课的教学,让学生学会从不同角度分析问题、解决问题;让 学生学会引申、变更问题,以培养学生发现问题、提出问题 的创造性能力.
【思路探究】 正整数. 【自主解答】 利用循环结构,重复操作,可求出最小
算法如下:
S1 S2 S3
S←1; i←3; 若 S≤5 000,则 S←S×i,i←i+2,重复 S3,否则
高中数学第一章算法初步1
y
0.3P, 0.3 30
0.5(P
当P 30),当P
30kg时 30kg时
画出行李托运费用程序框图.
解: 先输入托运重量为P和里程D,再分别用各自 条件下计算式子来进行计算处理,然后将结果与 托运旅程D想成相乘,最终输出托运行李费用M.
16/26
17/26
③循环结构
在一些算法中, 从否处开始, 按照一定条件, 重复执行某一处理步骤情况, 这就是循环结构.重 复执行处理步骤称为循环体.
d | Ax0 By0 C | / A2 B2
d | Ax0 By0 C | / A2 B2
输出d
S3:输出 d ;
结束
13/26
例2.设计算法,求一元二次方程ax2+bx+c=0 (a≠0 b2-4ac>0 )根,画出对应流程图
开始
输入系数a,b,c
计算 b2 4ac 计算
输出X1.X2
S3:输出 d ;
12/26
例1.已知点P0 (x0, y0 ) 和直线l : Ax By C 0
点P0 (x0 , y0 )
l
d
解: (2)用到框直图线来描距述离算法: .
开始
,求
S1:输入点坐标,及直线系 数:
x0 , y0 , A, B,C
S2:计算:
输入 x0 , y0 , A, B,C
处理框 赋值、计算 (执行框)
判断框
判断一个条件是否成立, 用“是”、“否”或 “Y”、“N”标明 3/26
新课讲解: 算法三种基本逻辑结构:
1.次序结构 2.条件结构 3.循环结构
4/26
次序结构
由若干个依次执行处理步骤组成.
高中数学 第1章 算法初步 1.3 基本算法语句 1.3.1 赋值语句 1.3.2 输入、输出语句教
1.3 基本算法语句1.3.1 赋值语句 1.3.2 输入、输出语句庖丁巧解牛知识·巧学一、伪代码的定义伪代码是介于自然语言和计算机语言之间的文字和符号,它的表示形式比较灵活自由,而且由于与计算机语言比较接近,因此可以比较容易地转换成计算机程序.伪代码无统一语法,只要写出来自己或别人能看懂就行.学法一得 1.在伪代码中,每一条指令占一行(else if例外),指令后不跟任何符号;2.在伪代码中,变量名和保留字不区分大小写;3.在伪代码中,变量不需声明,但变量局限于特定过程,不能不加显示的说明就使用全局变量.二、赋值语句格式:变量←表达式或变量作用:先计算出赋值号右边表达式的值,然后把这个值赋给赋值号左边的变量,使该变量的值等于表达式的值.注意:①赋值运算完成两类操作,一是计算,二是赋值,先计算,后赋值.②“←”的右边可以是常量、变量或算式,如:“x←10”表示把10赋给变量x,“x←y”表示把变量y的值赋给变量x.③“←”左边须是变量,而不能是表达式、常量,如:“15←a”,“x+y←c”是不正确的.④赋值号左右不能对换;“x←y”与“y←x”是两个不同的赋值过程,“x←y”是把y的值赋给x,“y←x”是把x的值赋给y.⑤一个赋值语句一次只能给一个变量赋值,但可给一个变量多次赋值,注意只保留最后一次所赋给的值.如:A←5,B←3,A←A+B,执行后A的值为8.学法一得赋值语句在流程图中对应使用三、输入、输出语句1.输入语句格式:(1)Read变量或;(2)Read变量,变量,变量,变量.功能:可以一次为一个或多个变量赋值,实现算法中的输入功能.注意:(1)给多个变量赋值时,中间用“,”隔开;如:Read a,b表示输入的数据依次赋给a,b 两个变量.(2)输入语句无计算功能,只能直接输入程序运行需要的数据.误区警示输入语句要求输入的值只能是具体的常数,不能是函数、变量或表达式. 2.输出语句格式:Print变量.例如:Printa;也可输出表达式的值,如:Print 12/3.功能:表示输出运算结果,具有计算功能;实现算法中的输出功能.学法一得输入、输出语句对应于流程图中的.典题·热题知识点一赋值符号在伪代码算法中的运用与作用例1执行下列语句后,A,B的值各为多少?A←2B←3B←A×AA←A+BB←A+B思路分析:本例是对赋值语句的理解,可给一个变量多次赋值,但只保留最后一次所赋给的值.解:A←2;B←3;B←A×A,{B=A2=4,A=2};A←A+B,{A=A+B=2+4=6};B←A+B,{B=A+B=6+4=10}.故A为6,B为10.深化升华变量是指程序在运行时其值是可以变化的量,如题中A,B,C都是变量,通常把一个变量比喻成一个盒子(其实是内存单元),盒子内可以存放数据,当一个新数据放进去时,原来的数就被“挤”了出去.变量的命名原则:由字母、数字组成,首字符必须是字母.如sum,s2,a,mcx,stu(10),d(5 to 20)等.把握好变量,对设计程序有很大帮助.知识点二输入、输出语句的运用例2已知某生三科成绩为80,75,95分,求三科总分及平均分.思路分析:本例要给(多个)变量赋值.将三科成绩赋给三个变量A,B,C,然后对三个变量进行操作、运算,求其总分、平均分,可用赋值语句,也可用输入语句.解:(算法1):流程图如图1-3-1.图1-3-1伪代码:A←80,B←75,C←95ZF←A+B+CPJF=ZF/3图1-3-2PrintZF,PJF(算法2):流程图如图1-3-2.伪代码:Read A,B,CZF←A+B+CPJF←ZF/3Print ZF,PJF方法归纳本题巧妙地运用了输入语句与赋值语句的共同功能:给变量赋值,达到了一题多解的效果.例3交换两个变量的值,并输出交换前后的值.思路分析:交换变量的值要借助中间变量,因两个变量的值不确定,所以使用输入语句. 注意在伪代码中,变量不需声明.解:流程图如图1-3-3:图1-3-3伪代码:Read a,bPrint a,bx←aa←bb←xPrint a,b深化升华给一个或几个变量提供数据要用赋值语句,给多个变量提供数据要用输入语句(Read).如果程序运行所需数据事先已确定且比较少,可用赋值语句,也可用输入语句;否则,如果事先不确定或数量较多,应使用输入语句.知识点三用秦九韶算法求多项式的值例4设计利用秦九韶算法计算5次多项式f(x)=a5x5+a4x4+a3x3+a2x2+a1x+a0当x=x0时的值的程序框图.思路分析:如何应用秦九韶算法完成一般的多项式f(x)=a n x n+a n-1x n-1+…+a1x+a0求值问题?f(x)=a n x n+a n-1x n-1+…+a1x+a0=(a n x n-1+a n-1x n-2+…+a1)x+a0=[(a n x n-2+a n-1x n-3+…+a2)x+a1]x+a0=……=[…(a n x+a n-1)x+a n-2x+…+a1]x+a0.求多项式的值时,首先计算最内层括号内一次多项式的值,即v1=a n x+a n-1然后由内向外逐层计算一次多项式的值,即v2=v1x+a n-2v3=v2x+a n-3……v n=v n-1x+a0这样,把n次多项式的求值问题转化成求n个一次多项式的值的问题,只要算n次乘法和n 次加法.解:程序框图如图1-3-4:图1-3-4拓展延伸我国宋代秦九韶是一般高次多项式方程的数值求解的集大成者,他在《数书九章》(1247年)一书中给出了高次多项式方程数值解的完整算法,即他所称的“正负开方术”.《数书九章》中用这一算法去解决各种可以归结为代数方程的实际问题,其中涉及的方程最高次数达到10次,秦九韶解这些问题的算法整齐划一,步骤分明,堪称中国古代数学算法化、机械化的典范.这样有利于计算机的运行速度.观察秦九韶算法的数学模型,计算v k时要用到v k-1的值,若令v0=a n,我们可以得到下面的递推公式:⎩⎨⎧=+==--),,2,1(,10n k a v v a v k n k k n Λ这是一个在秦九韶算法中反复执行的步骤,可以用循环结构来实现.问题·探究交流讨论探究问题 在掌握新知识伪代码后,怎么把握输入与输出语句的联系?探究过程:同学甲:设计一算法时,首先用自然语言描述问题的一个算法,然后把自然语言转化为程序框图,最后把程序框图转化为程序语句,最终就可以让计算机来执行这个算法.同学乙:具体设计算法,要分三部分:第一部分是输入部分,为程序运行提供必须的数据;第二部分是数据处理部分,按题目要求进行一系列的操作,得到结果;第三部分是输出部分,输出所求结果.同学丙:输入语句和输出语句的区别:输入语句是外部直接给程序中变量赋值;输出语句是程序运行的结果输出到外部,先计算表达式,得到结果输出.探究结论:只有计算机程序有输入与输出语句,计算机语言才算有生命力,才实现了它的应用价值,我们必须掌握好这两种语句.此级HS4的大图若接排前加,若另面则不加。
高中数学课件 第一章 算法初步 1.1《算法的概念》
x 2y 1 ① 2x y 1 ②
第一步:①+②×2得: 5x 1
③
第二步: 解③得: x 1
5
第三步: 将②- ① ×2 得 5y 3
④
第四步: 解④得:
y3 5
第五步: 得到方程组的解为
x
1 5
y
3 5
aa12xx
b1 y c1 b2 y c2
例1:一位商人有9枚银元,其中有 1枚略轻的是假银元.你能用天平(不用 砝码)将假银元找出来吗?说出算法.
➢例 2:设计一个算法,判断7是否为质数。
第一步,用2除7,得余数1,因为余数不是0,所以2不能除7. 第二步,用3除7,得余数1,因为余数不是0,所以3不能除7. 第三步,用4除7,得余数3,因为余数不是0,所以4不能除7. 第四步,用5除7,得余数2,因为余数不是0,所以5不能除7. 第五步,用6除7,得余数1,因为余数不是0,所以6不能除7.
算法3: S1 将原式变形为(1+6)+(2+5)+(3+4)=3×7; S2 计算3×7; S3 输出运算结果。
1.任意给定一个正实数a,试设计一个算 法求以a为直径的圆的面积.
解:第第二一步步::_输计_入算__a的__值__. ___r____a2_________.
第三步:__计_算_______S______r_2 _______.
算法的特征是什么?
明确性 有效性 有限性
写出求
1 1 1 L 1 的一个算法
23
100
第二章 推理与证明
2.1.2 演绎推理
内容: 1、什么是演绎推理? 2、什么是三段论? 3、合情推理与演绎推理有哪些区别? 4、能举出一些在生活和学习中有关演绎 推理的例子。
苏教版高中数学必修三-第一章-算法初步1.2.1ppt课件
已知一个三角形的三边长分别为 2,3,4.利用海伦公式设 计一个算法,求出该三角形的面积,并画出流程图.(海伦公 式:已知三角形的三边长分别为 a,b,c,则三角形的面积 S a+b+c = pp-ap-bp-c,其中 p= 2 )
【解】
先将三角形的各边长赋值,求出三角形周长的
一半,然后利用公式求解. 算法如下: S1 a←2,b←3,c←4;
组成的,其中图框
表示各种操作的类型, 图框中的 文字 和 符号 表示操作的内 容, 流程线 表示操作的先后次序.
2.常见的图框、流程线及功能
图形符号
功能 表示算法的 开始或 结束 ,一般画 起止框 成 圆角矩形 输入、输出 输入、 表示 操作,一般画成 平行四边形 输出框 或 计算 ,一般画成 矩形 处理框 表示 赋值 根据条件决定执行两条路径中 判断框 某一条 菱形 ,一般画成 表示 执行步骤 流程线 箭头线 表示 的
在老师的引导下,充分发挥学生的主观能动性,从问题 入手,通过分析问题、交流方案、解决问题、运用问题的探 索过程,让学生全程参与到问题的探索中而突破难点. 通过学生对常见的图框及功能的理解和认识,结合典型 例题及变式训练,使学生初步掌握顺序结构的流程图的设计 而强化了重点.
●教学流程
演示结束
§1.2 流程图 1.2.1 顺序结构
教师用书独具演示
●三维目标 1.知识与技能:掌握顺序结构的特点,设计方法. 2.过程与方法:学会用算法分析问题;能够使用顺序结 构编写简单的程序解决具体问题.
3.情感态度与价值观:体会用结构化方法解决数学问题 的便捷性;明确结构化在程序设计中的重要作用;激励尝试 使用多种方法解决问题;培养良好的编程习惯和态度. ●重点难点 重点:各种图框的功能,会用算法图框表示顺序结构. 难点:对顺序结构的概念的理解;利用图框表示流程线 顺序结构.
必修3第一章《算法初步》训练题(含答案)
必修③第一章《算法初步》练习题一、选择题:1.下面对算法描述正确的一项是:( )A .算法只能用自然语言来描述B .算法只能用图形方式来表示C .同一问题可以有不同的算法D .同一问题的算法不同,结果必然不同 2. 算法的三种基本结构是 ( )A. 顺序结构、模块结构、条件结构B. 顺序结构、循环结构、模块结构C. 顺序结构、条件结构、循环结构D. 模块结构、条件结构、循环结构 3.用二分法求方程022=-x 的近似根的算法中要用哪种算法结构( ) A .顺序结构 B .条件结构 C .循环结构 D .以上都用 4.对赋值语句的描述正确的是 ( )①可以给变量提供初值 ②将表达式的值赋给变量 ③可以给一个变量重复赋值 ④不能给同一变量重复赋值 A .①②③ B .①② C .②③④ D .①②④5. 将两个数a=8,b=17交换,使a=17,b=8,下面语句正确一组是 ( ) A. B. C. D.6、下列程序语句不正确...的是( ) A 、INPUT “MATH=”;a+b+c B 、PRINT “MATH=”;a+b+c C 、c b a += D 、1a =c b - 7.下列给变量赋值的语句正确的是( )A. 5=aB.a +2=aC. a =b =4D. a =2*a8. 给出以下四个问题,①输入一个数x ,输出它的相反数.②求面积为6的正方形的周长.③求三个数a,b,c 中的最大数. ④求函数1,0()2,0x x f x x x -≥⎧=⎨+<⎩的函数值.其中不需要用条件语句来描述其算法的有 ( )A. 1个B. 2个C. 3个D. 4个 9.给出以下四个问题: ①解不等式32-x a>23-x a(0>a 且1≠a ) .②求边长为6的正三角形的面积.③求函数21,0()43,0x x f x x x -≥⎧=⎨+<⎩的函数值 ④若集合}1,1{-=A ,}1|{==mx x B ,且A B A =⋃,求m 的值。
必修3数学第一章 算法初步练习题及答案(A组)
第一章 算法初步测试题(A 组)班次 学号 姓名 一、选择题 (每小题5分,共50分)1.已知直角三角形两直角边长为a ,b ,求斜边长c 的一个算法分下列三步:①计算c =a ,b 的值;③输出斜边长c 的值,其中正确的顺序是 ( ) A.①②③ B.②③① C.①③② D.②①③2.给出以下一个算法的程序框图(如下图所示),该程序框图的功能是 ( ) A.求输出,,a b c 三数的最大数 B.求输出,,a b c 三数的最小数 C.将,,a b c 按从小到大排列 D.将,,a b c 按从大到小排列3.右边的程序框图(如上图所示),能判断任意输入的数x 的奇偶性:其中判断框内的条件是A.0m =?B.0x = ?C.1x = ?D.1m =? ( ) 4.将两个数a =8,b =7交换,使a =7,b =8,使用赋值语句正确的一组 ( ) A. a =b ,b =a B. c =b ,b =a ,a =c C. b =a ,a =b D. a =c ,c =b ,b =a 5.下列给出的输入语句、输出语句和赋值语句⑴输出语句INPUT a ;b ;c (2)输入语句INPUT x =3 (3)赋值语句3=B (4)赋值语句A=B=2则其中正确的个数是, ( )A .0个 B. 1个 C. 2个 D. 3个7.下边程序执行后输出的结果是 ( ) 5n = 0s =WHILE 15s <s s n =+ 1n n =-WENDPRINT n ENDA. -1B. 0C. 1D. 28.当2x =时,下面的程序段结果是 ( ) 1i = 0s =WHILE 4i <= *1s s x =+ 1i i =+ WENDPRINT s ENDA. 3B. 7C. 15D. 17AAABC D9.下面为一个求20个数的平均数的程序,在横线上应填充的语句为 ( ) 0S = 1i = DOINPUT x S S x =+ 1i i =+LOOP UNTIL ___________ /20a S = PRINT a ENDA.20i >B.20i <C. 20i >=D.20i <=10.下列各数中最小的数是 ( ) A.()2111111 B.()6210 C.()41000 D.()981二、填空题 (每小题5分,共20分)11.如图⑵程序框图箭头a 指向①处时,输出 s=__________.12.此题程序运行结果为___________。
北京市西城区教辅资料-学习探究诊断-高中数学(必修3)-算法初步
北京市西城区教辅资料-学习探究诊断-高中数学必修3全册练习及参考答案第一章算法初步测试一算法与程序框图概念Ⅰ学习目标1.了解算法思想及算法的意义.2.了解框图的概念,明确框图符号的意义.Ⅱ基础性训练一、选择题1.下列程序框通常用来表示赋值、计算功能的是()(A)(B) (C) (D)2.算法的有穷性指的是()(A)算法是明确和有效的(B)算法能够在有限步内完成(C)算法的每个操作步骤是可执行的(D)用数字进行四则运算的有限过程3.对算法理解正确的是( )(A)一种解题方法(B)基本运算及规定的运算顺序构成的完整的解题步骤(C)计算的方法(D)一种语言程序4.算法中,每一步的结果有()(A)一个或两个(B)任意多个(C)确定的一个(D)两个*5.有一堆形状大小相同的珠子,其中只有一粒重量比其他的珠子重,其余所有珠子重量相同.一个同学利用科学的算法,仅两次利用天平就找出了这颗最重的珠子,则这堆珠子最多有()(A)6粒(B)7粒(C)8粒(D)9粒二、填空题6.完成不等式2x+3<3x+2的算法过程:(1)将含x的项移项至不等式的左边,将常数项移至不等式的右边,得____________;(2)在不等式两边同时除以x的系数,得____________.7.阅读流程图(图1),试写出流程图所给出的算法含义:__________________.图18.写出图2中顺序框图的运算结果____________.图29.写出图3中顺序框图的运算结果____________.图310.“判断整数n (n >2)是否为质数”的算法可以按如下步骤进行:S 1 给定大于2的整数n .S 2 令i =2.S 3 用i 除n ,得到余数r .S 4 判断余数r 是否为0.若为0,则不是质数,结束算法;否则将i 的值增加1仍用i 表示.S 5 判断i 是否大于n -1.若是,则是质数,结束算法;否则返回第三步.现设给定的整数为35,则算法结束时i 的值是______.三、解答题11.写出判断直线ax +by +c =0与圆x 2+y 2=1的位置关系的算法.12.写出求解二元一次方程组⎩⎨⎧=+=21y x ax 的算法步骤.13.在某商场购物时,商场会按顾客购物款的数额的大小分别给予不同的优惠折扣.计算顾客应付货款的算法步骤如下:S 1 输入购物款x .(购物款以元为单位)S 2 若x <250,则折扣率d =0;若 250≤x <500,则折扣率d =0.05;若 500≤x <1000,则折扣率d =0.10;若 x ≥1000,则折扣率d =0.15;S3 计算应付货款T=x(1-d);S4 输出应付货款T.现已知某顾客的应付货款是882元,求该顾客的购物款是多少元.14.输入直角三角形两直角边长度,输出第三条边长度,画出此题的顺序框图.测试二 程序框图(一)Ⅰ 学习目标理解三种逻辑结构,会读逻辑框图,尝试写出程序框图.Ⅱ 基础性训练一、选择题1.程序框图中“处理框”的功能是( )(A)赋值 (B )计算(C)赋值或计算 (D )判断某一条件是否成立2.尽管算法千差万别,但程序框图按其逻辑结构分类只有( )(A)2类 (B )3类 (C )4类(D )5类 3.程序框图如图1所示,输出的结果为( )图1(A)2,5 (B)4,7 (C)2,4(D)1,2 4.程序框图如图2所示,输出的结果为( )图2(A)2 (B )9 (C )3(D )1 5.程序框图如图3所示,当a =1,b =-3时输出的结果为( )(A)0,-1 (B)2,-4 (C )21-,43- (D )-2,4图3二、填空题6.用流程图表示求解不等式ax >b (a ≠0)的算法时,判断框内的内容可以是_________.7.在表示求解一元二次方程的算法中,需要使用选择结构,因为__________________.8.如图4,当a =-1时,框图的输出结果是______.图49.如图5,框图的输出结果是______.图510.如图6所示框图,设火车托运重量为p (kg )的行李时,每千克的费用标准为⎩⎨⎧>-+⨯≤=,)kg 30)(30(5.0303.0,)kg 30(3.0P P P P y 则图中①②处分别填的内容为:①______;②________________.图6三、解答题11.已知函数f(x)=|x-3|,程序框图(图7)表示的是给出x值,求相应函数值的算法.请将该框图补充完整.写出①②两处应填的内容.图712.观察所给算法的流程框图(图8),说明它表示的函数.如果输入数字1,则输出的数字是什么?图8Ⅲ拓展性训练13.设计一个求任意实数的绝对值的算法,并画出流程图.14.已知三个实数a,b,c,试给出寻找这三个数中最大数的一个算法,并画出该算法的流程图.测试三 程序框图(二)Ⅰ 学习目标理解三种逻辑结构,会读逻辑框图,尝试写出程序框图.Ⅱ 基础性训练一、选择题1.下列关于框图的逻辑结构说法正确的是( )(A)用顺序结构画出“求点到直线的距离”的程序框图是唯一的(B)条件结构中不含顺序结构(C)条件结构中一定含有循环结构(D)循环结构中一定包含条件结构2.已知函数⎩⎨⎧>-≤=,0,,0,)(x x x x x f 在由给定的自变量x 计算函数值f (x )的算法中,应该至少包含以下基本逻辑结构中的( )(A)顺序结构、循环结构 (B )条件结构、循环结构(C)顺序结构、条件结构 (D )顺序结构、循环结构3.下列四个说法中正确的有( )①任意一个算法都离不开顺序结构②算法程序框图中,根据条件是否成立有不同的流向③循环体是指按照一定条件,反复执行某一处理步骤④循环结构中一定有条件结构,条件结构中一定有循环结构(A)1个 (B )2个 (C )3个 (D )4个4.要解决下面四个问题,只用顺序结构画不出其流程图的是( )(A)计算1+2+…+10的值 (B )当圆的面积已知时,求圆的周长(C)给定一个数x ,求其绝对值 (D )求函数f (x )=x 3-3x 的值5.算法:S 1 m =a ;S 2 若b <m ,则m =b ;S 3 若c <m ,则m =c ;S 4 若d <m ,则m =d ;S 5 输出m .则输出的m 为( )(A)a ,b ,c ,d 中的最小值 (B )a ,b ,c ,d 中的最大值(C)d (D )a二、填空题6.程序框图中的“处理框”的功能是____________.7.有如图1所示的程序框图,该程序框图表示的算法功能是____________.图18.如图2所示是求小于等于1000所有正偶数的和的程序框图,则空白处①应为_________;②应为___________.图29.如图3所示表示的是计算前10个奇数倒数之和的算法的程序框图,其中判断框内应填入的条件是___________.图3三、解答题10.给出如图4所示的程序框图.在执行上述框图表达的算法后,输出的S,i的值分别是多少?图411.写出表示解方程ax+b=0(a,b为常数)的一个程序框图.Ⅲ拓展性训练12.设计求S=1+3+5+…+2007和T=1×3×5×…×2007的一个算法,并画出相应的流程图.13.某工厂2004年的生产总值为200万元,技术革新后,预计以后每年的生产总值比上一年增加5%,问最早需要到哪一年年生产总值超过300万元,写出算法并画出相应的程序框图.测试四 算法语言Ⅰ 学习目标了解算法语言,尝试用算法语言实现一些算法.Ⅱ 基础性训练1.编写一个输入底面边长和侧棱长,求正四棱锥体积的程序.2.已知函数f (x )=2x -3,编写一段程序,用来求f [f (x )]的值.(其中,x 值由用户输入)3.给出三个正数a ,b ,c ,问能否构成一个三角形,若能则求其面积.请设计一个程序解决该问题.(注:已知三角形三边分别为a ,b ,c ,则其面积))()((c p b p a p p S ---=,其中p =2c b a ++)4.已知等式“□3×6528=3□×8256”中,方框内是同一个数字,请设计程序,用尝试的方法求出满足等式的一个数字.5.请编写一个程序,计算1!+2!+3!+4!+ (100)(注:其中4!=1×2×3×4,5!=1×2×3×4×5,...,100!=1×2×3× (100)Ⅲ 拓展性训练6.已知数列{a n }满足:a 1=1,a 2=3,对于任意的n ≥3,有a n =3a n -1-2a n -2.求该数列的前n 项和.7.写出一个用二分法求方程x 3+x 2-2x -2=0在某个区间上的近似解的程序.要求:初始区间和计算精度都能在运行中指定.8.求二次函数在给定区间上的最值.测试五 逻辑框图综合测试一、选择题 1.找出乘积为528的两个相邻偶数,流程图如图1,其中填充①②处语句正确的选择是( )图1(A)S =i *(i +2),输出i ,i -2 (B)S =i *i +2,输出i ,i -2 (C)S =i *(i +2),输出i ,i +2 (D)S =i *(i -2),输出i +2,i2.如图2所示的算法流程图中,第三个输出的数是( )图2(A)1(B )23 (C )2 (D )25 3.阅读流程图3,若输入的a ,b ,c 分别为21,32,75,则输出的a ,b ,c 分别是( )图3(A)75,21,32 (B )21,32,75 (C )32,21,75 (D )75,32,214.如图4,程序框图所进行的求和运算是( )图4(A)101211+++Λ (B)1814121+++Λ(C)2014121+++Λ(D)191311+++Λ5.如果如图5程序框图的输出结果为-18,那么在判断框①中表示的“条件”应该是( )图5(A)i ≥9(B)i >9 (C)i ≥8 (D)i >116.函数⎪⎩⎪⎨⎧<=>-=0,1.0,00,1x x x y 求值的程序框图如图6所示,则空白处需要填的语句为:①_________;②_________;③_________.图67.如图7是一个算法的程序框图,当输入的值为5时,则其输出的结果是______.图78.阅读流程图8填空:①最后一次输出的i=______;②一共输出i的个数为______个.图89.分别写出图9和图10的运行结果:图9______;图10______.图9 图10北京市西城区教辅资料-学习探究诊断-高中数学必修3全册练习及参考答案第一章 算法初步测试一1.C 2.B 3.B 4.C 5.D6.-x <-1,x >1 7.已知一个数的13%,求这个数 8.259.10 10.5 11.S 1 求出原点到直线ax +by +c =0的距离22||ba c d +=.S 2 比较d 与圆的半径r =1的大小,若d >r ,则直线与圆相离;若d =r ,则直线与圆相切;若d <r ,则直线与圆相交.12.S 1 判断a 是否为0,若是,则执行S 4,若不是,则执行S 2.S 2 解出ax 1=. S 3 将a x 1=代入x +y =2,解出ay 12-=. S 4 输出方程组的解.若a =0,则输出“方程组无解”;否则,输出方程组的解⎪⎪⎩⎪⎪⎨⎧-==.12,1a y ax13.解:设该顾客的购物款为x 元.根据题意,x >882.如果x <1000,则0.9x =882,解得x =980;如果x ≥1000,则0.85x =882,解得x ≈1037.65; 所以,该顾客的购物款是980元或1037.65元. 14.测试二1.C 2.B 3.A 4.B 5.C 6.a >0,或a <07.当方程根的判别式∆≥0时,方程有实根;当方程根的判别式∆<0时,方程没有实根.8.“是负数” 9.12,21 10.①0.3*p ②0.3*30+0.5*(p —30). 11.x <3,y =x -3.或x ≤3,y =x -3. 12.流程框图表示的是下面的函数:⎪⎩⎪⎨⎧-<--=->+=3,213,73,21x x x x x y输出的数字是3. 13.S 1 输入xS 2 如果x ≥0,则y ←x ;否则y ←-x S 3 输出y .14.S 1 输入a ,b ,cS 2 x ←aS 3 如果b >x ,则x ←b ;否则,执行S 4 S 4 如果c >x ,则x ←c ;否则,执行S 5 S 5 输出x测试三1.D 2.C 3.C 4.C 5.A 6.赋值或计算 7.从小到大连续n 个正整数乘积大于1000时,计算出最小的自然数n .或其他等价的回答. 8.S =S +i ,i =i +2 9.n ≤10?10.3205,5111.12.S1赋值S=1,T=1S2 赋值i=3S3赋值S=S+i,赋值T=T×iS4 赋值i=i+2S5 若i≤2007,则执行S3S6输出S,T.13.S1 赋值n=0,a=200,r=0.05S2 年增量T=arS3年产量a=a+TS4 若a≤300,那么n=n+2,重复执行S2S5N=2004+nS6 输出N.测试四算法语言1.a=input("底面边长a=");1=input("侧棱长l=");//注:这里应该对输入数据的合理性作出判别.h=sqrt(1^2-(sqrt(2)/2*a)^2); //计算棱锥的高V=a^2*h/3; //计算棱锥的体积disp(V,"正四棱锥的体积为");2.[法一]x=input("x=");y=2*x-3; //计算y=f(x)y=2*y-3; //计算y=f(f(x))disp(y);[法二]//定义函数f(x)=2*x-3function y=f(x)y=2*x-3;endfunction//下面可直接调用f(x)x=input("x=");y=f(f(x)); //与代数中的表达方式一样disp(y);3.disp("请输入三角形的三条边长:");a=input("a=");b=input("b=");c=input("c=");if(a+b>c)&(a+c>b)&(b+c>a)thenp=(a+b+c)/2;S=sqrt(p*(p-a)*(p-b)*(p-c));disp(S,"三角形面积为");elsedisp("不能构成三角形!");end;4.for i=1∶9if((10*i+3)*6528==(30+i)*8256)thendisp(i,"这个数字是:");break;end;end;5.[法一]用for语句实现S=0;an=1;for i=1∶100an=an*i;S=S+an;end;disp(S,"1!+2!+3!+…+100!=");[法二]用while语句实现S=0;an=1;i=1while i<=100an=an*i;S=S+an;i=i+1;end;disp(S,"1!+2!+3!+…+100!=");6.a_n_2=1;a_n_1=3;n=input("要求前多少项的和呢?请输入n=");S=0;//如果只要求前1项或2项的和,则不需要用到递推关系if(n==1)thenS=a_n_2;elseif(n==2)thenS=a_n_2+a_n_1;end;//如果n大于2,则要用递推关系i=3;while(i<=n)a_n=3*a_n_1-2*a_n_2;//先由递推关系求出下一项S=S+a_n; //然后累加到和S中a_n_2=a_n_1; //原来的第(n-1)项在下一轮循环中将变成第(n-2)项a_n_1=a_n; //原来的第n项在下一轮循环中将变成第(n-1)项i=i+1; //项的脚标增1(表示下一轮循环要计算下一项了) end;printf("前%d项和为:%d",int(n),int(S));7.//定义函数f(x)=x^3+x^2-2x-2//方程f(x)=0有三个实数解:-sqrt(2),-1,sqrt(2)function y=f(x)y=x^3+x^2-2*x-2;endfunction//用户输入初始区间的左右端点disp("请输入实根所在初始区间[a,b]:");a=input("a=");b=input("b=");ya=f(a);yb=f(b);//用户输入计算精度d=abs(input("请输入计算精度(输入的越小精度越高,但计算花费的时间就越多):"));//下面通过二分法求符合精度的近似解x=0;err=%f;while(abs(b-a)>=d)x=(a+b)/2;y=f(x);if(y==0)then break;end; //若此时x的值正好是方程的解,则退出循环if(y*ya<0)thenb=x;yb=f(b);elseif(y*yb<0)thena=x;ya=f(a);elseerr=%t;break;end;end;if(err==%t)thendisp("计算中出现问题,可能是在您输入的初始区间中没有实根.");elseprintf("方程的近似解为:x=%f.",x);end;8.[法一]disp("请依次输入f(x)=ax^2+bx+c的系数");a=input("a=");if(a==0)thendisp("系数a不能为0!");abort;end;b=input("b=");c=input("c=");disp("请输入区间的左右端点:");x1=input("x1=");x2=input("x2=");if(x1>=x2)then begindisp("区间端点输入错误!");abort;end;x0=-b/(2*a); //对称轴if(a>0)then //如果开口朝上if(x0<x1)then //如果对称轴在给定区间的左侧,则min_v=a*x1^2+b*x1+c; //在x=x1处取得最小值max_v=a*x2^2+b*x2+c; //在x=x2处取得最大值elseif(x0<(x1+x2)/2)then //如果对称轴在区间[x1,x2]的左半部分,则min_v=a*x0^2+b*x0+c; //在顶点处取得最小值max_v=a*x2^2+b*x2+c; //在x=x2处取得最大值elseif(x0<x2)then //如果对称轴在区间[x1,x2]的右半部分,则min_v=a*x0^2+b*x0+c; //在顶点处取得最小值max_v=a*x1^2+b*x1+c; //在x=x1处取得最大值else //如果对称轴在区间[x1,x2]右侧,则min_v=a*x2^2+b*x2+c; //在x=x2处取得最小值min_v=a*x1^2+b*x1+c; //在x=x1处取得最大值end;else //如果开口朝下if(x0<x1)then //如果对称轴在给定区间的左侧,则max_v=a*x1^2+b*x1+c; //在x=x1处取得最大值min_v=a*x2^2+b*x2+c; //在x=x2处取得最小值elseif(x0<(x1+x2)/2)then //如果对称轴在区间[x1,x2]的左半部分,则max_v=a*x0^2+b*x0+c; //在顶点处取得最大值min_v=a*x2^2+b*x2+c; //在x=x2处取得最小值elseif(x0<x2)then //如果对称轴在区间[x1,x2]的右半部分,则max_v=a*x0^2+b*x0+c; //在顶点处取得最大值min_v=a*x1^2+b*x1+c; //在x=x1处取得最小值else //如果对称轴在区间[x1,x2]右侧,则max_v=a*x2^2+b*x2+c; //在x=x2处取得最大值min_v=a*x1^2+b*x1+c; //在x=x1处取得最小值end;end;printf("最小值=%f,\n最大值=%f",min_v,max_v);[法二](为[法一]的简化版)a=input("a=");b=input("b=");c=input("c=");x1=input("x1=");x2=input("x2=");x0=-b/(2*a); //对称轴if(x0<x1)then //如果对称轴在给定区间的左侧,则v1=a*x1^2+b*x1+c; //在x=x1处取得最小值v2=a*x2^2+b*x2+c; //在x=x2处取得最大值elseif(x0<(x1+x2)/2)then //如果对称轴在区间[x1,x2]的左半部分,则v1=a*x0^2+b*x0+c; //在顶点处取得最小值v2=a*x2^2+b*x2+c; //在x=x2处取得最大值elseif(x0<x2)then //如果对称轴在区间[x1,x2]的右半部分,则v1=a*x0^2+b*x0+c; //在顶点处取得最小值v2=a*x1^2+b*x1+c; //在x=x1处取得最大值else //如果对称轴在区间[x1,x2]右侧,则v1=a*x2^2+b*x2+c; //在x=x2处取得最小值v2=a*x1^2+b*x1+c; //在x=x1处取得最大值end;if(a>0)thenprintf("最小值=%f,\n最大值=%f",v1,v2);elseprintf("最小值=%f,\n最大值=%f",v2,v1);end;测试五1.C2.C3.A4.C5.A6.y=-1;x=0?;y=07.28.57,89.6,5。
高中数学必修3第一章算法初步课
赋值、计算.
思考3:已知函数 y=x3+3x2-24x+30, 求自变量x对应的函数值的算法步骤 如何设计? 第一步,输入一个自变量x的值. 第二步,计算y=x3+3x2-24x+30. 第三步,输出y.
开始
输入x y=x3+3x2-24x+30
思考4:该算法是什么逻辑结构? 其程序框图如何?
输出y 结束
程序:
INPUT a,b,c
(1)
y=(a+b+c)/3 PRINT y END
(2)
INPUT “Chinese,Maths,English=”;a,b,c y=(a+b+c)/3 PRINT “The average=”;y END
INPUT a INPUT b
(3)
INPUT c PRINT “The average=”;(a+b+c)/3 END INPUT “Chinese=”;a INPUT “Maths=”;b INPUT “English=”;c PRINT “The average=”;(a+b+c)/3 END
PRINT END A ,B
例3、写出计算一个学生语文、数学、英语 三门课的平均成绩的算法、程序框图和程序. 算法分析:
第一步,输入该学生数学、 语文、英语三门课的成绩. a + b+ c 第二步,计算 y = 3 第三步,输出y. 程序框图:
开始
输入a,b,c
a + b+ c y= 3
输出y 结束
1.2 基本算法语句
第一课时 输入语句、输出语句和赋值语句
思考1:在算法的程序框图中,输入框与输 出框是两个必要的程序框,我们用什么图 形表示这个程序框?其功能作用如何?
