1 / 18

分支结构程序设计

分支结构程序设计. 全局在胸. 说明: 1 、 IF-THEN 必须写在同 一行上。 2 、 ELSE 部分是可选项, 可以无此部分。 3 、当 IF-THEN-ELSE 写在 同一行上时,可以省 略 ENDIF. 块 IF 语句 IF 条件 THEN 语句组 1 ELSE 语句组 2 ENDIF. 行 IF 语句 (也就是说明 3) IF 条件 THEN 语句组 1 [ELSE 语句组 2].

dean-chavez
Download Presentation

分支结构程序设计

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 分支结构程序设计 全局在胸

  2. 说明: 1、IF-THEN必须写在同 一行上。 2、ELSE部分是可选项, 可以无此部分。 3、当IF-THEN-ELSE写在 同一行上时,可以省 略ENDIF 块IF 语句 IF 条件 THEN 语句组1 ELSE 语句组2 ENDIF 行IF 语句(也就是说明3) IF 条件 THEN 语句组1 [ELSE 语句组2]

  3. 某商店为促销商品,按购买货物的款数多少给以不同的优惠折扣如下: 购货不足100元,不优惠。 购货满100元(含100元)不足500元,九五折优惠(减价5%)。 购货满500元(含500元)不足1000元,九折优惠(减价10%)。 购货1000元(含1000元)以上, 八折优惠(减价20%)。顾客购买原价为X元的货物,现应付款多少元

  4. 0 x<100 5% x>=100 and x<500 P = 10% x>=500 and x<1000 20% x>=1000 设折扣为P,那么顾客购买原价为X元 的货物,现应付款A=X*(1-P)元

  5. 开始 T x>=500andx<1000 A A P=0.1 T F x<100 T x>=1000 P=0 F P=0.2 F T x>=100andx<500 A=X*(1-P) P=0.05 输出A F 结束 输入x

  6. 例6:编程模拟符号函数SGN(X)的功能: X>0 X=0 X<0

  7. 开始 程序: INPUT “X=”;X IF X=0 THEN LET Y=0 ELSE IF X<0 THEN LET Y=-1 ELSE LET Y=1 END IF END IF PRINT “Y=”;Y END 输 入自变量X Y N X = 0 分支嵌套 Y N Y=0 X<0 Y=1 Y= -1 输 出 Y 结 束

  8. 已知:求一元二次方程ax2+bx+c=0(a‡0)根. 应考虑d=b^2-4*a*c大于0,小于0和 等于0的三种情况

  9. 开始 分支嵌套 Y N x1=x2 d<0 求X1、X2 输出无实根 输出X1,X2 输出X1,X2 输 入a,b,c Y N d = 0 结 束

  10. 求1+3+5+……+99的和 算法分析: 1、设P为加数,P的特点: 后一个加数等于前一加数加二

  11. P的初值设为-1。即: P= -1 第1个加数1:P=P+2 第2个加数3:P=P+2 第3个加数5:P=P+2 第4个加数7:P=P+2 上述程序称为累加器 加数为1时称计数器

  12. S的初值设为0。即: S=0 S的初值与第一个加数之和1:S=S+ P 前两个加数之和4:S=S+ P 前三个加数之和9:S=S+P 前四个加数之和16S=S+P

  13. 开始 10 LET P= -1 20 LET S=0 30 LET P=P+2 40 LET S=S+P 50 PRINT “P=”;P, 55 PRINT “S=”;S 60 GOTO 30 格式:GOTO 行号 P= -1:S=0 P=P+2 S=S+P 输出S GOTO

  14. 10 LET P= -1: LET S=0 22 IF P<99 THEN 30 LET P=P+2 40 LET S=S+P 50 PRINT “P=”;P, 60 “S=”;S 65 GOTO 22 70 ELSE 75 GOTO 90 80 ENDIF 90 END 开始 P= -1:S=0 F P<99 ? T P=P+2:S=S+P 输出S 结束

  15. 作业: 一、第66页 第3题 二、求出下列程式中,前200个数之和 y=1+3+5+7+……+ 三、求小于1000的大于0的9的倍数之和。 四、输入三个数,输出绝对值最大的数 要求:二、三、四题写算法分析、画流程图、编程序

  16. 已知已知三条线段a、b、c,判断a、b、c能否构成三角形已知已知三条线段a、b、c,判断a、b、c能否构成三角形 算法分析: 1、判断a,b,c能否构成三角形,若能, 利用海伦公式求面积S。否则输出 “a,b,c不能构成三角形 ”。

  17. 开始 输入a,b,c IF T a+b>c and a+c>b and b+c>a ? F THEN ELSE 求S 输出构不 成三角形 输出S ENDIF 结束

  18. 10 INPUT “a,b,c=”;a,b,c 20 IF a+b>c and a+c>b and b+c>a THEN 32 p=(a+b+c)/2 34 s=sqr(p*(p-a)*(p-b)*(p-c)) 40 print “s=”;s 50 ELSE 60 print “It’s not a triangle” 70 ENDIF 80 end (注意行号的使用)

More Related