《分支结构程序设计.ppt》由会员分享,可在线阅读,更多相关《分支结构程序设计.ppt(17页珍藏版)》请在优知文库上搜索。
1、已知:求一元二次方程ax2+bx+c=0(a0)根算法分析: 1、判断d=b2-4*a*c的情况。若有实根 则求X1=(-b+sqr(b2-4*a*c)/(2*a) X2 =(-b-sqr(b2-4*a*c)/(2*a) 若无实根,则输出“方程无实根”已知:求一元二次方程ax2+bx+c=0(a0)根算法分析: 1、判断d=b2-4*a*c的情况。若有实根 则求X1=(-b+sqr(b2-4*a*c)/(2*a) X2 =(-b-sqr(b2-4*a*c)/(2*a) 若无实根,则结束程序。开始输入系数a,b,c结束D=b2-4*a*cD=0 ?TF输出无实根输出X1X2求X1、X2IFIFT
2、HENTHENELSEELSEENDIFENDIFIF IF 条件条件 THEN THEN 语句组语句组1 1 ELSE ELSE 语句组语句组2 2ENDIF ENDIF 说明:说明:IF-THENIF-THEN必必须写在同一行上。须写在同一行上。IF IF THEN THEN ELSE ELSE ENDIF ENDIF 开始输入系数a,b,c结束D=b2-4*a*cD=0 ?TF2 2、ELSEELSE部分是可选项,部分是可选项,可以无此部分。可以无此部分。IF IF THEN THEN ENDIF ENDIF 输出X1X2求X1、X2IFIFTHENTHENELSEELSEENDIFEN
3、DIF比较两个字符串的大小,输出较大者。 单个字符的比较就是比较其机内码的大小 常见字符的内码大小: “ ”“0”“9”“A”“Z”“a”B$T TF F输出B$IFIFTHENTHENELSEELSEENDIFENDIF10 INPUT 10 INPUT “A$,B$=A$,B$=”;A$,B$;A$,B$20 IF 20 IF THEN THEN 40 40 45 ELSE45 ELSE50 50 70 ENDIF70 ENDIF80 END 80 END 10 INPUT 10 INPUT “A$,B$=A$,B$=”;A$,B$;A$,B$20 IF 20 IF THEN THEN E
4、LSE ELSE 30 end 30 end 当当IF-THEN-ELSEIF-THEN-ELSE写在同一行上时,可写在同一行上时,可以省略以省略ENDIF ENDIF 开始输入X输出X结束X0 ?T TF FIFIFTHENTHENELSEELSE10 INPUT 10 INPUT “X=X=”;X;X20 IF 20 IF THEN THEN 40 40 70 ENDIF70 ENDIF80 END 80 END 10 INPUT 10 INPUT “X=X=”;X;X20 IF 20 IF THEN THEN 80 END 80 END 例例6:编程模拟符号函数:编程模拟符号函数SGN(
5、X)的功能:)的功能: 101YX0X=0X0开始开始结结 束束X = = 0Y输输 出出 Y输输 入自变量入自变量XY=0X 0YY= - -1Y=1程序:程序:INPUT “X=”;XIF X=0 THEN LET Y=0ELSE IF X0 THEN LET Y=-1 ELSE LET Y=1 END IFEND IFPRINT “Y=“;YEND开始开始结结 束束X = = 0Y输输 出出 y输输 入自变量入自变量XY=0X 0YY= - -1Y=1求1+3+5+99的和算法分析: 1、设P为加数,P的特点: 后一个加数等于前一加数加二 即: 设: P= -1 第1个加数: P=P+2
6、 第2个加数: P=P+2 第3个加数: P=P+2 第4个加数: P=P+2 上述程序称为累加器开始 P= -1:S=0P=P+2 输出SS=S+P 10 LET P= -120 LET S=030 LET P=P+240 LET S=S+P50 PRINT “P=”;P,55 “S=”;S60 GOTO 30格式:GOTO 行号 开始P= -1:S=0P=P+2:S=S+P 输出S结束P99 ?TF10 LET P= -1: LET S=022 IF P99 THEN 30 LET P=P+240 LET S=S+P50 PRINT “P=”;P,60 “S=”;S65 GOTO 3070 ELSE75 GOTO 9080 ENDIF90 END 作业:作业: 要求:写算法分析、画流程图、编程序 一、第66页 第2题 二、写出下列程式中,前200个数之和 y=1+3+5+7+ 三、求小于1000的9的倍数之和。