201871030136-颜静

导航

2018710301360-颜静 实验二 个人项目

项目 内容
课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/2018CST
这个作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/14552393.html
我的课程学习目标 1,掌握软件项目个人开发流程。
2,掌握GitHub发布软件项目的操作方法。
这个作业在哪些方面帮助我实现学习目标 1,掌握软件项目个人开发流程;
2,更好地掌握Github发布软件项目的操作方法;
项目GitHub的仓库链接地址 https://github.com/yanjing-jpj/zero

任务一:

作业点评链接
https://www.cnblogs.com/lomzn/p/14522775.html#4843128
https://www.cnblogs.com/chenhuiru/p/14549775.html#4843125
https://www.cnblogs.com/chms/p/14550446.html#4843122
https://www.cnblogs.com/realCaoPanpan/p/14544798.html#4843120

任务二:详细阅读《构建之法》

已详细阅读第1章、第2章,掌握了PSP流程。

任务三:

1,需求分析

D{0-1} KP 是经典{ 0-1}背包问题的一个拓展形式,用以对实际商业活动中折扣销售、捆绑销售等现象进行最优化求解,达到获利最大化。D{0-1}KP数据集由一组项集组成,每个项集有3项物品可供背包装入选择,其中第三项价值是前两项之和,第三项的重量小于其他两项之和,算法求解过程中,如果选择了某个项集,则需要确定选择项集的哪个物品,每个项集的三个项中至多有一个可以被选择装入背包,D{0-1} KP问题要求计算在不超过背包载重量 的条件下,从给定的一组项集中选择满足要求装入背包的项,使得装入背包所有项的价值系数之和达到最大;D{0-1}KP instances数据集是研究D{0-1}背包问题时,用于评测和观察设计算法性能的标准数据集;动态规划算法、回溯算法是求解D{0-1}背包问题的经典算法。查阅相关资料,设计一个采用动态规划算法、回溯算法求解D{0-1}背包问题的程序。

2,功能设计

  • 1.可正确读入数据;

  • 2.能够对一组数据按项集第三项的价值:重量比进行非递增排序;

  • 3.用动态规划法求出最优解;

  • 4.能够绘制任意以重量为横轴、价值为纵轴的数据散点图;

3,设计实现

  • 1.正确读入数据

  • 2.能够对一组数据按项集第三项的价值:重量比进行非递增排序;

  • 3.用动态规划法求出最优解;

4,测试运行

5,比较满意的代码

void char_to_number(char date[],int N,int number[])     //N:数字的个数
{
    int i=0;
    int length = strlen(date);
    int index1=0,index2=0,index_str=0;
    char apart,str[4];
    while(index2<length)
    {
        if(date[index2]==',')
        {
            while(index1<index2)
            {
                str[index_str++] = date[index1++];
                //index1++;
            }
            int temp=0,power;
            power=index_str-1;
            for(int j=0;j<index_str;j++)
            {
                int n = str[j]-'0';
                temp = temp+n*pow(10,power);
                power--;
            }
                //printf("%c",str[j]);

            index_str=0;
            number[i++]=temp;
            index1 = index2+1;
        }
        index2++;
    }
}

6,总结

这次的实验很有挑战性,让我对GitHub的使用,更进一步了解,对c语言的使用也更加熟练,以后我会更熟练地进行个人项目的开发。

7,展式PSP

PSP2.1 任务内容 计划共完成需要的时间(min) 实际完成需要的时间(min)
Planning 计划 8 6
Estimate 估计这个任务需要多少时间,并规划大致工作步骤 8 6
Development 开发 650 720
Analysis 需求分析(包括学习新技术) 26 30
Design Spec 生成设计文档 35 26
Design Review 设计复审(和同事审核设计文档) 50 60
Coding Standard 代码规范(为目前的开发制定合适的规范) 30 30
Design 具体设计 30 40
Coding 具体编码 100 130
Code Review 代码复审 30 40
Test 测试(自我测试,修改代码,提交修改) 15 10
Reporting 报告 20 20
Test Report 测试报告 15 20
Size Measurement 计算工作量 10 5
Postmortem & Process Improvement 事后总结,并提出过程改进计划 30 30

任务四:

已完成任务3的程序开发,将项目源码的完整工程文件提交到注册Github账号的项目仓库中。

posted on 2021-03-31 09:33  201871030136-颜静  阅读(71)  评论(1编辑  收藏  举报