实验一任务三

2.3任务三实验过程

2.3.1代码链接

所选题目的代码链接(题目一):

https://github.com/mxyu0330/text2/blob/main/temp.cpp

 

 

 

图13

 

2.3.2工作记录

按照下表填写工作记录表

 

2.1  PSP0 工作记录表

项目

记录结果

日期

11月6日

开始时间

13:30

结束时间

17:00

编码行数

29

错误数量

1

错误1

少分号

错误1修改时间

16:24

 

2.3.3测试用例

判定/条件覆盖测试程序设计:

1、当前子段和 nowsum > 0&&当前子段和 nowmax > 最大子段和 maxsum

2、当前子段和 nowsum > 0&&当前子段和 nowmax <= 最大子段和 maxsum

3、当前子段和 nowsum <= 0&&当前子段和nowmax > 最大子段和 maxsum

4、当前子段和 nowsum <= 0&&当前子段和nowmax <= 最大子段和 maxsum

(1)单元测试用例一:-1,2,4,3,2 最大子段和为11

(2)单元测试用例二: -1,2,-1,0,-2最大子段和为2

(3)单元测试用例三: -2,1,0,1,-1 最大子段和为2

(4)单元测试用例四:-2,1,1,2,3 最大子段和为7

此四组测试用例完全符合判定/条件覆盖的要求,因此,单元测试样例达到判定/条件覆盖的目的。

2.3.4测试过程

1、程序设计思路:

运用动态规划的思想来解决最大子段和问题:通过遍历累加这个数组元素,实时更新最大子段和,如果当前累加数为负数,直接舍弃,重置为0,然后接着遍历。时间复杂度:O(n)

2、判定/条件覆盖测试程序流程图:

 

 

 

图14

3、测试结果:

 

 

 

图15

posted @ 2022-11-08 19:42  Mxyu  阅读(41)  评论(0)    收藏  举报