1、1.1.2 程序框图 算法初步习题课例:设计求一个数a的绝对值的算法并画出相应的流程图第一步:输入a第二步:如果a;则lala,否则,lala;第三步:输出lalNY结束输出|a|a 0输入a开始输出|a|=a输出|a|=a 例、对任意正整数n,ns131211的值,并画出程序框图.开始输入一个正整数n输入S的值结束S=0i=1S=S+1/ii=i+1inYN设计一个算法求 步骤A步骤B思考:将步骤A和步骤B交换位置,结果会怎样?能达到预期结果吗?为什么?要达到预期结果,还需要做怎样的修改?例 用二分法求解方程求关于x的方程x220的根,精确到0.005算法描述第一步 令f(x)=x2-2,因
2、为f(1)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之间的任意值均为满足条件的近似值;否则返回第二步。开始x1=1:x2=2f(x)=x22x1=mx2=mm=(x1+x2)/2x1=mx2=mf(m)=0?f(x1)f(m)0|x1-x2|0.005结束输出所求的近似根mm=(x1+x2)/2是否否是否是流程图表示第一步 令f(x)=x2-2,因为f(1)0,所以
3、设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.0 元,并加收0.2元的城市污水处理费,超过的部分,每立方米收费1.5元,并加收0.4元的城市污水处理费.开始输入xx7y=1.2xy=1.9x4.9
4、输入y结束yNP.11习题A组第1题程序框图开始S=0I=I+1I=1S=S+I*II100输出S结束NYP.11习题1.1A组第2题输入x开始x3y=1.2x+1.4y=5输入y结束NYP.11习题A组第3题程序框图开始输入50米跑成绩:xx 6.8输出提示“若要继续请按键”Y“,否则请按其他键输入到变量mm=“y”or m=“Y”结束输出xNYYNP.11习题1.1B组第1题程序框图开始输出提出:“输入第一个方程的系数”“x的系数是”:a1“y的系数是”:b1“常数项是”:c1输出“x=”;x“y=”;y方程有无数多组解a1*b2a2*b10 x=(c2*b1 c1*b2)/(a1*b2 a2*b1)y=(c2*b1 c1*b2)/(a1*b2 a2*b1)结束输出提出:“输入第二个方程的系数”“x的系数是”:a2“y的系数是”:b2“常数项是”:c2NYc1=c2方程无解P.11习题1.1B组第2题