zoukankan      html  css  js  c++  java
  • 第三次作业

    求最大子段和

    问题简介

    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. 要求
      从语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖五个覆盖标准中,任选一个标准设计测试用例
      利用自动测试工具对程序进行测试
      将程序运行结果和自动测试分析结果截图

    算法思路

    1. 思路
      求最大子段和,整数的数目自定。包含正数和负数其数量随机,我的思路是穷举法即把每一种可能的字段都算出来并求和。在本次作业中,我设计了三个循环:第一层循环针对数组中的每一个数遍历;第二层循环对第一层循环中的每个数之后的每个数进行遍历;第三层循环对每组介于第一层循环和第二层循环的数段求和,求出的和放在另外一个数组中。最后挑出最大的子段和。
    2. 流程图

    自动测试

    运用Visual Studio 2015中的自带的测试工具进行测试,测试通过。

    测试用例

    1. 覆盖
      语句覆盖是指选择足够多的测试用例,使得运行这些测试用例时,被测程序的每个语句至少执行一次。 比语句覆盖稍强的覆盖标准是判定覆盖。按判定覆盖准则进行测试是指,设计若干测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一次,即判断的真假值均曾被满足。条件覆盖是指 构造一组测试用例,使得每一判定语句中每个逻辑条件的可能值至少满足一次。
    2. 本程序
      本次采用判定覆盖,是每个选择的真假分支都执行一遍



    附录

    将代码上传至coding.net的网站上。代码链接:https://coding.net/u/Rst321/p/zuidaziduanhe/git/blob/master/l?public=true

  • 相关阅读:
    Step by step Dynamics CRM 2013安装
    SQL Server 2012 Managed Service Account
    Step by step SQL Server 2012的安装
    Step by step 活动目录中添加一个子域
    Step by step 如何创建一个新森林
    向活动目录中添加一个子域
    活动目录的信任关系
    RAID 概述
    DNS 正向查找与反向查找
    Microsoft Dynamics CRM 2013 and 2011 Update Rollups and Service Packs
  • 原文地址:https://www.cnblogs.com/llp321/p/8657491.html
Copyright © 2011-2022 走看看