1、数学必修3(苏教版)已知平面直角坐标系内两不同点A,B,试求AB的垂直平分线的方程试写出这个问题的算法分析:首先应判断A、B两点的横、纵坐标是否相等,在不等时,先求垂直平分的斜率或线段AB的中点坐标,最后由点斜式写出直线方程解析:算法如下:S1输入x1,y1,x2,y2.S2判断x1x2是否成立如果成立,则输出所求的直线方程为y,转结束;如果不成立,则判断y1y2是否成立如果成立,则输出所求的直线方程为x,转结束;如果不成立,则输出所求的直线方程为y,转结束S3结束规律总结:算法设计与一般意义上的解决问题不同,这是一类问题的一般解法的抽象与概括,它要借助一般的问题解决方法,又要包含这类问题的所
2、有可能情形,它往往是把问题的解法划分为若干个可执行的步骤,有时甚至是重复多次,但最终都必须在有限个步骤之内完成变式训练1设计一个算法,将高一某班50名同学某次数学考试成绩不及格者的分数打印出来解析:算法步骤如下:S1令n1;S2如果n50,则转到S7;S3输入一个学生的成绩G;S4将G和60比较,如果G60,则输出G;S5nn1;S6转到S2;S7结束2已知平面直角坐标系中的两点A(1,0),B(3,2),写出求线段AB的垂直平分线方程的一个算法解析:算法步骤如下:S1计算x01,y01,得AB的中点N(1,1);S2计算k1,得AB的斜率;S3计算k2,得AB垂直平分线的斜率;S4得直线AB
3、垂直平分线的方程y12(x1),即y2x3,输出求正数a平方根近似值的一种算法思路是这样的:第一步确定平方根的首次近似值:a1 (a1可以任取一个正数);第二步由代数式b1求出b1;第三步取二者的算术平均值a2为第二次近似值;第四步由方程b2求出b2 ;第五步取算术平均值a3作为第三次近似值;反复进行上述步骤,直到获得满足误差在0.1以内的数为止请依照上述思路,画出相应的算法流程图解析:流程图如下:规律总结:流程图是用规定的图形和流程线来准确、直观、形象地表示算法的图形画流程图之前应先对问题设计出合理有效的算法,然后分析算法的逻辑结构,根据逻辑结构画出相应的流程图变式训练3写出解方程axb0(
4、a,b为常数)的算法,并画出流程图解析:算法如下:S1判断a是否为零;S2若a0且b0,输出“方程的解是全体实数”;S3若a0且b0,输出“方程无解”;S4若a0,则输出x.流程图如下图所示编写程序,输入两个实数,由小到大输出这两个数分析:确定好算法,根据算法过程编写程序解析:伪代码:Reada,bIf abThentaabbtEnd IfPrinta,b规律总结:(1)条件语句用来处理算法中的选择逻辑结构,在一些需要按给定的条件进行比较、判断的问题中,如判断一个数的正负,比较两个数的大小等,常用条件语句设计程序(2)条件语句主要有两种格式,一是IfElseEnd格式,它有两个语序列;二是If
5、End格式,它仅有一个语句序列(3)在一些较为复杂的问题的算法中还要用到复合的条件语句,它一般是在条件语句的Else分支语句中再设计一个条件语句变式训练4已知函数f(x)画出求f(f(x)的流程图并写出伪代码解析:流程图如下:算法伪代码如下:ReadxIf x2 Theny1x5If y12 Thenyy15Elseyy122y1End IfElsey2x22xIf y22 Thenyy25Elseyy222y2End IfEnd IfPrinty画出计算332333435的一个算法的流程图,并写出伪代码分析:可利用循环语句逐个计算3,332,33233,解析:流程图如下图所示:伪代码如下:T
6、1For I From 1 To 5 Step 1TT3IEnd ForPrint T规律总结:(1)For循环是当型循环,即当循环变量I满足“初值”I“终值”时,就执行循环体,I可参与计算,也可起计数的作用(2)只有当循环次数明确时,才能使用本语句(3)步长可以为正、负,但是不能是0,否则会陷入“死循环”步长为正时,要求终值大于初值,如果终值小于初值,循环将不能执行步长为负时,要求终值必须小于初值(4)程序语句中变量后不使用分号时,变量的值就会在屏幕上显示出来利用这种功能,可以清楚地在屏幕上看出循环过程中变量值的变化情形(5)循环变量是用于控制算法中循环次数的变量,起计数作用,它有初值和终值
7、,是循环开始和结束时循环变量的值,步长是指循环变量每次增加的值步长为1时可以省略不写,但为其他值时,必须写,不能省略变式训练5写出计算1的伪代码,并画出相应的流程图解析:流程图与伪代码如下:S1For i From 1 to 100 Step 1SSEnd ForPrint S6用For循环语句写出求12221002的值的算法的程序(sum表示求和)解析:伪代码如下:sum0For i From 1 To 100 Step 1sumsumi2End ForPrint sum题型五While循环语句的程序编写编写一个伪代码计算:1,并画出流程图解析:伪代码:i1S0While i1 000 SS
8、1/iii1End WhilePrintSEnd流程图:变式训练7九章算术卷七盈不足有下列问题:今有共买物,人出八,盈三;人出七,不足四,问人数,物价几何?请画出流程图并编写伪代码解答上述问题解析:设人数是x,物价是y元,则画出流程图如下:算法的伪代码如下:x1While 8x37x4xx1End Whiley8x3Print x,y8某商场第一年销售计算机5 000台,如果平均每年的销售量比上一年增加10%,那么,从第一年起,约几年内可使总销售量达到30 000台?为解决该问题编写一个算法(sum表示求和)解析:伪代码如下:i1S5 000sum0While sum30 000sumsumSii1SS(10.1)End WhilePrint i1