zoukankan      html  css  js  c++  java
  • 计算与软件工程第三次作业

    计算与软件工程第三次作业

    作业要求 https://edu.cnblogs.com/campus/jssf/infor_computation17-31/homework/10454
    我在这个课程的目标是 学会较为简单的软件开发,了解漏洞与bug
    此作业在哪个具体方面帮我实现目标 测试代码,运行代码可以让我更加了解这门课的内容
    参考文献 https://www.cnblogs.com/yinianzs/p/9774375.html https://blog.csdn.net/weixin_43864336/article/details/94735078 https://blog.csdn.net/shaoyou223/article/details/84944062
    作业正文 https://www.cnblogs.com/yjh1128/p/12451503.html

    作业需求

    用类/函数来实现
    需求:希望返回 3 种信息
    最大子数组的和
    最大子数组开始的下标
    最大子数组结束的下标
    从文本文件中读输入的数据,熟悉文件操作, 文件有两种数据
    第一个数字:这次测试中有多少个数据, 数字后面是冒号。

    [结果]

    单元测试

    单元测试简介

    单元测试是代码正确性验证的最重要的工具,也是系统测试当中最重要的环节。也是唯一需要编写代码才能进行测试的一种测试方法。在标准的开发过程中,单元测试的代码与实际程序的代码具有同等的重要性。每一个单元测试,都是用来定向测试其所对应的一个单元的数据是否正确。
    单元测试是由程序员自己来完成,最终受益的也是程序员自己。可以这么说,程序员有责任编写功能代码,同时也就有责任为自己的代码编写单元测试。执行单元测试,就是为了证明这段代码的行为和我们期望的一致。

    单元测试的好处:

    能够协助程序员尽快找到BUG的具体位置
    能够让程序员对自己的程序更有自信
    能够让程序员在提交项目之前就将代码变的更加健壮
    能够协助程序员更好的进行开发
    能够向其他程序员展现你的程序该如何调用
    能够让项目主管更了解系统的当前状况

    博客作业

    回顾:

    大一简单接触MS Office和C++语言,学习其中知识。较为熟练使用msoffic,有二级msoffic。
    大二学习了Java语言,数据结构课程,了解了图形界面,能够进行类似c++的简单程序;讷讷够实现简单需求,在大二暑假还学习了asp的网页制作。
    大三学习了操作系统数据库,ASP,MATLAB,数学建模实训等课程,了解了避免死锁的银行家算法,Hash等经典的计算机算法。

    未来的想法考虑:

    希望在这学期的计算与软件工程课程的学习中了解软件开发的过程,联系自学过的计算机软件知识,得到进一步的锻炼。

    预习

    代码风格的原则是:简明,易读,无二义性。
    缩进,空格,行宽,等都要有严格相对统一的标准

    学会代码复审

    名 称 形 式 目 的
    自我复审 自己 vs. 自己 用同伴复审的标准来要求自己。不一定最有效,因为开发者对自己总是过于自信。如果能持之以恒,则对个人有很大好处
    同伴复审 复审者 vs. 开发者 简便易行
    团队复审 团队 vs. 开发者 有比较严格的规定和流程,用于关键的代码,以及复审后不再更新的代码。覆盖率高——有很多双眼睛盯着程序。但是有可能效率不高(全体人员都要到会)

    代码

     #include<iostream>
     #include<cstdlib>
     using namespace std;
     int main()
     { 
      int n,star=0,end=0;
      //实现整型数组的输入
      cout<<"输入整型数组的长度";
      cin>>n;
      int *p=new int[n];
      cout<<"输入一个整型数组";
      for(int i=0;i<n;i++)
      { 
          cin>>p[i];
      }
      int sum=p[0];
      int max_sum=p[0];
      for(int i=1;i<n;i++)
      {   
          if(sum>0)    //从第二个数开始判断是否为正数
          { 
              sum=sum+p[i];  //是正数,将和值(初始值为p【0】)和第i+1个数做和。
             if(sum>max_sum) // 并判断是否为最大,是让其赋值给max_sum,并将子数组末位置改变。
               { 
                   max_sum=sum;
                   end=i;
               }
          }
          else 
          { 
              sum=p[i];  //是负数,将第i+1个数的值赋值给和值sum
                 if(sum>max_sum)//并判断是否为最大,是让其赋值给max_sum,并将子数组初、末位置改变。
                 {    
                    max_sum=sum;
                    star=i;
                    end=i;
                 }
          }
      }
      cout<<"最大子数组位置为第"<<star+1<<"个到第"<<end+1<<"个"<<endl;
      cout<<"最大子数组和为"<<max_sum<<endl;
      system("pause");
      return 0;
     }
    

    码云链接
    https://gitee.com/yuan_jia_hao/learngit.git

  • 相关阅读:
    Jaba_Web--JDBC 修改记录操作模板
    Jaba_Web--JDBC 查询记录操作模板
    Jaba_Web--JDBC 删除记录操作模板
    Java_Web--JDBC 增加记录操作模板
    C语言编程入门题目--No.15
    C语言编程入门题目--No.13
    C语言编程入门题目--No.14
    C语言编程入门题目--No.12
    C语言编程入门题目--No.10
    C语言编程入门题目--No.11
  • 原文地址:https://www.cnblogs.com/yjh1128/p/12451503.html
Copyright © 2011-2022 走看看