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

    第3次作业

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1
    作业要求 https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10494
    作业目标 九方格的实现
    作业正文 如下图
    其他参考文献 www.baidu.com

    1.Github:https://github.com/liaoping775

    2.

    PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
    Planning 计划 100 200
    Estimate 估计这个任务需要多少时间 200 240
    Development 开发 700 1000
    Analysis 需求分析 (包括学习新技术) 60 80
    Design Spec 生成设计文档 30 60
    Design Review 设计复审 30 50
    Coding Standard 代码规范 (为目前的开发制定合适的规范) 20 30
    Design 具体设计 60 70
    Coding 具体编码 80 120
    Code Review 代码复审 10 20
    Test 测试(自我测试,修改代码,提交修改) 40 10
    Reporting 报告 30 40
    Test Repor 测试报告 20 20
    Size Measurement 计算工作量 20 30
    Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 50 30
    合计   1450 2000

    3.解题思路

    1.先上网查找关于九方格的算法。

    2.写完代码进行静态检测。

    3.进行检测和改进。

    4.设计实现过程。

               代码由1个类和3个函数组成。

    流程图:

    5.代码说明

    随机数输入:

    void start()
    {
        srand ( unsigned ( time (NULL) ) );  /* 产生random_shuffle的随机数种子 */
        for( int i = 1  ; i <= 9 ; ++i )
            for( int j = 1 ; j <= 9 ; ++j )
                Initial_State[i][j] = 0 ;
        for( int i = 1 ; i <= 9 ; ++i )
            Initial_State[1][i] = i ;
        random_shuffle( &( Initial_State[1][1]) , &( Initial_State[1][10])  ) ;  /* 第一行随机排列产生 */
        get_Initial_State( 2 , 1 ) ;  /* 从第二行开始搜索 */
    }
    检测重复数:

        for( int k = 1 ; k <= 9 ; ++k )
        {
            bool can = true;                // can 变量用于记录数字k能否放在 ( i , j ) 处
            for( int m = 1 ; m < i ; ++m )
                if( Initial_State[m][j] == k )  // 检查同一列是否出现过数字k
                {
                    can = false ;
                    break ;
                }
            if ( can )
                for( int n = 1 ; n < j ; ++n )
                    if( Initial_State[i][n] == k )  // 检查同一行是否出现过数字k
                    {
                        can = false ;
                        break;
                    }
     
    代码检测:
     
     
    运行结果:
     
     
    6.总结:
    在这次活动中,我明白了进行软件开发会遇到很多的困难,同时也发现我有很多方面有明显的不足,比如这个代码就难倒了我,我知道了这些不足,有了方向进行改正,相信下次能做的更好。
     
     这次我给自己的评分是9分。
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    Checked Exception & Unchecked Exception
    Spring事务:调用同一个类中的方法
    SpringMVC接收checkbox传值
    Java String 学习
    写给大忙人的JavaSE 8
    Spring in Action 4th 学习笔记 之 AOP
    Spring in Action 4th 学习笔记
    spring只是一个框架
    lambda小结
    电感的Q值
  • 原文地址:https://www.cnblogs.com/qwe12/p/12594251.html
Copyright © 2011-2022 走看看