有下列伪码程序: START INPUT (M,N) IF M>=10 THEN X=10 ELSE X=l ENDIF IF N>=20 THEN Y=20 ELSE Y=2 ENDIF PRINT(X,Y) STOP 流图
时间: 2023-10-18 15:04:51 浏览: 196
```flow
st=>start: START
input=>inputoutput: INPUT (M,N)
cond1=>condition: M>=10?
op1=>operation: X=10
op2=>operation: X=1
cond2=>condition: N>=20?
op3=>operation: Y=20
op4=>operation: Y=2
print=>inputoutput: PRINT(X,Y)
stop=>end: STOP
st->input->cond1
cond1(yes)->op1->print
cond1(no)->op2->print
print->stop
cond1(yes)->cond2
cond2(yes)->op3->print
cond2(no)->op4->print
```
相关问题
设计下列伪码程序的语句覆盖和路径覆盖测试用例: START INPUT (A,B,C) IF A>5 THEN X=10 ELSE X=1 END IF IF B>10 THEN Y=20 ELSE Y=2 END IF IF C>15 THEN Z=30 ELSE Z=3 END IF PRINT (X,Y,Z) STOP
好的,我知道了。根据您的要求,我会设计覆盖INPUT、输出语句、IF语句中的两个分支以及STOP语句的测试用例。
语句覆盖测试用例:
1. A=6, B=11, C=16
2. A=1, B=20, C=5
路径覆盖测试用例:
1. A=6, B=11, C=16
2. A=6, B=11, C=3
3. A=6, B=2, C=16
4. A=6, B=2, C=3
5. A=1, B=20, C=16
6. A=1, B=20, C=3
7. A=1, B=2, C=16
8. A=1, B=2, C=3
其中,用例1、2是语句覆盖测试用例;用例1-8是路径覆盖测试用例,覆盖了程序中所有的路径。
设计下列伪码程序的语句覆盖和路径覆盖测试用例(要求先画出程序流程图,再设计测试用例): START INPUT(A,B,C) IF A>5 THEN X=10 ELSE X=1 END IF IF B>10 THEN Y=20 ELSE Y=2 END IF IF C>15 THEN Z=30 ELSE Z=3 END IF PRINT (X,Y,Z) STOP
这是该程序的流程图:
```
START
|
INPUT(A,B,C)
|
IF A > 5 THEN
X = 10
ELSE
X = 1
END IF
|
IF B > 10 THEN
Y = 20
ELSE
Y = 2
END IF
|
IF C > 15 THEN
Z = 30
ELSE
Z = 3
END IF
|
PRINT(X,Y,Z)
|
STOP
```
下面是满足语句覆盖和路径覆盖的测试用例:
- 用例1:A = 6, B = 11, C = 16。期望结果:X = 10, Y = 20, Z = 30。
- 用例2:A = 3, B = 11, C = 16。期望结果:X = 1, Y = 20, Z = 30。
- 用例3:A = 6, B = 9, C = 16。期望结果:X = 10, Y = 2, Z = 30。
- 用例4:A = 6, B = 11, C = 14。期望结果:X = 10, Y = 20, Z = 3。
- 用例5:A = 3, B = 9, C = 14。期望结果:X = 1, Y = 2, Z = 3。
以上五个测试用例满足了语句覆盖和路径覆盖准则。
阅读全文