软件工程第二次作业

博客信息 沈阳航空航天大学计算机学院2020软件工程作业
作业要求 https://edu.cnblogs.com/campus/sau/Computer1701-1705/homework/10583
课程目标 熟悉一个“高质量”软件的开发过程
作业目标 单元测试练习

1. 题目:最大连续子数组和(最大子段和)

 

问题: 给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1<=i<=j<=n 例如,当(a[1],a[2],a[3],a[4],a[5],a[6])=(-2,11,-4,13,-5,-2)时,最大子段和为20。 -- 引用自《百度百科》 

2. 算法思想及代码

采用递推法

代码

https://github.com/yufeiabc/-2/blob/6674e1f104612432bc3abdaafd7a458dde49f0f5/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B%E7%AC%AC%E4%BA%8C%E6%AC%A1%E4%BD%9C%E4%B8%9A

3流程图及判定/条件覆盖

软件工程第二次作业_第1张图片

需满足以下覆盖情况:

判定条件覆盖是设计足够的测试用例,得使判断中每个条件的所有可能取值至少执行一次,同时每个判断本身所有可能结果也至少执行一次。

测试用例

 -2,11,-4,13,-5,-2

-5 -3 -10 -6 -7 -1

4 代码及运行结果

软件工程第二次作业_第2张图片

 

 

软件工程第二次作业_第3张图片

 

 

 

 软件工程第二次作业_第4张图片

 

 软件工程第二次作业_第5张图片

 

 

5.工作记录

项目 记录结果
日期 2020年4月8日
开始时间 16:00
结束时间 19:30
编码行数 34
错误数量 1
错误1 代码运行有点问题
错误修改时间 10分钟

6.总结

通过本次作业,我学到了很多知识,享受到了编程的快乐,在这次作业中也暴露了我的很多问题,我以后会更加注意,继续努力!

你可能感兴趣的:(软件工程第二次作业)