这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10494 |
这个作业的目标 | 实现一个命令行程序,不妨称之为Sudoku |
作业正文 | 下文 |
其他参考文献 |
百度,csdn等 |
一、Github项目地址:https://github.com/jindaxiayes/20177683/blob/master/README.md
二.
PSP2.1 | Personal Software Process Stages | 预估耗时(h) | 实际耗时(h) |
---|---|---|---|
Planning | 计划 | 10 | |
Estimate | 估计这个任务需要多少时间 | 8 | |
Development | 开发 | 3 | |
Analysis | 需求分析 (包括学习新技术) | 1 | |
Design Spec | 生成设计文档 | 0.5 | |
Design Review | 设计复审 | 0.5 | |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 1 | |
Design | 具体设计 | 0.5 | |
Coding | 具体编码 | 0.5 | |
Code Review | 代码复审 | 0.5 | |
Test | 测试(自我测试,修改代码,提交修改) | 0.5 | |
Reporting | 报告 | 0.5 | |
Test Repor | 测试报告 | 0.5 | |
Size Measurement | 计算工作量 | 0.5 | |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 0.5 | |
合计 | 10 |
三:解题思路:
从来没有接触过数独,规则也是最近才学会的,看了很多网上的代码和同学提交的作业,感觉是差距太大,之前的两次作业可能自己花点功夫还能写出来,这次作业真的是让我无从下手,最基本的代码写不出来,更别说后面的各种测试了,所以我只能网上找一个能看懂一点点的代码应付这次作业了,马上就要实习,我会抓紧剩下不多的时间学习一门语言,尽量有工作的能力。
四:代码:
#include<iostream>
#include<stdlib.h>
#include <string>
#include <iostream>
#include <fstream>
using namespace std;
bool sign = false;/* 构造完成标志 */
int num[3][3];/* 创建数独矩阵 */
int main(int argc,char *argv[])
{
int k, i, j; char* in; //输入文件
char* out; jie_num = atoi(argv[2]);
pan_num = atoi(argv[4]);
in = argv[6];
ifstream infile(in);
out = argv[8];
ofstream outfile(out);
for (k = 0; k < pan_num; k++)
{
char temp[10][10] = { 0 };
int flag = 0;
for (i = 0; i < jie_num; i++)
{
for (j = 0; j < jie_num; j++)
{
infile >> temp[i][j];
num[i][j] = temp[i][j] - '0'; }
flag++; }
cout << endl;
sign = false;
DFS(0);
for (i = 0; i < jie_num; i++)
{
for (j = 0; j < jie_num; j++)
{
num2[k][i][j] = num[i][j]; }
} for (i = 0; i < jie_num; i++)
{
for (j = 0; j < jie_num; j++)
{
cout << num2[k][i][j] << " ";
} cout << endl;
} cout << endl;
ofstream outfile;
outfile.open("output.txt", ios::app); //以后继方式打开文件以便继续写
for (int i = 0; i < jie_num; i++)
{
for (int j = 0; j < jie_num; j++)
{
outfile << num2[k][i][j] << " ";
}
outfile << endl;
}
outfile << " "; outfile.close();
}
return 0;
}
五:总结:
很抱歉不能完成老师的任务,这次作业对我来说确实很难,只能说尽量努力吧!