软件工程第二次作业
GIT : https://github.com/DOG-boy
GIT 名字 : DOG -boy
学号后5位 : 61212
博客地址 : https://i.cnblogs.com/EditPosts.aspx?postid=11564158&update=1
作业链接 : 第二次作业
(1)环境配置
一.VS的配置
二:GIT的下载
三:项目地址的复制
四:GIT的配置
五:新建与DOG-boy同名的文件,并新建项目在其文件中。
(2)代码设计思路
背景
阿超家里的孩子上小学一年级了,这个暑假老师给家长们布置了一个作业:家长每天要给孩子出一些合理的,但要有些难度的四则运算题目,并且家长要对孩子的作业打分记录。
作为程序员的阿超心想,既然每天都需要出题,那何不做一个可以自动生成小学四则运算题目与解决题目的命令行 “软件”呢。他把老师的话翻译一下,就形成了这个软件的需求:
- 程序接收一个命令行参数 n,然后随机产生
n
道加减乘除(分别使用符号+-*/
来表示)练习题,每个数字在0
和100
之间,运算符在2
个 到3
个之间。 - 由于阿超的孩子才上一年级,并不知道分数。所以软件所出的练习题在运算过程中不得出现非整数,比如不能出现
3÷5+2=2.6
这样的算式。 - 练习题生成好后,将生成的
n
道练习题及其对应的正确答案输出到一个文件subject.txt
中。 -
当程序接收的参数为4时,以下为一个输出文件示例。
代码:
// 四则计算器.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
//
#include "pch.h"
#include <iostream>
#include<stdlib.h>
#include<time.h>
#include <fstream>
#include <iostream>
#include<stdlib.h>
#include<time.h>
#include <fstream>
using namespace std;
int num(int x)
{
return rand() % 100;
}
int sign()
{
return rand() % 4;
}
int main()
{
int a, i, j, n;
cout << "请输入题目的数量:";
cin >> a;
srand(time(NULL));
ofstream examplefile("demo.txt");
while (1)
{
if (examplefile.is_open()) {
if (a < 1)
{
cout << "该输入不符合要求";
cin >> a;
}
else
{
for (j = 0; j < a; j++)
{
i = sign();
switch (i)
{
case 0:
cout << j + 1 << ":" << " " << num(1) << "-" << num(2) << "=" << "\n";
examplefile << j + 1 << ":" << " " << num(1) << "+" << num(2) << "=" << "\n";
break;
case 1:
cout << j + 1 << ":" << " " << num(1) << "-" << num(2) << "=" << "\n";
examplefile << j + 1 << ":" << " " << num(1) << "-" << num(2) << "=" << "\n";
break;
case 2:
cout << j + 1 << ":" << " " << num(1) << "*" << num(2) << "=" << "\n";
examplefile << j + 1 << ":" << " " << num(1) << "*" << num(2) << "=" << "\n";
break;
case 3:
n = num(2);
if (n != 0)
{
cout << j + 1 << ":" << " " << num(1) << "/" << n << "=" << "\n";
examplefile << j + 1 << ":" << " " << num(1) << "/" << n << "=" << "\n";
}
else
{
j--;
}
break;
}
}
break;
}
}
}
examplefile.close();
return 0;
}
{
return rand() % 100;
}
int sign()
{
return rand() % 4;
}
int main()
{
int a, i, j, n;
cout << "请输入题目的数量:";
cin >> a;
srand(time(NULL));
ofstream examplefile("demo.txt");
while (1)
{
if (examplefile.is_open()) {
if (a < 1)
{
cout << "该输入不符合要求";
cin >> a;
}
else
{
for (j = 0; j < a; j++)
{
i = sign();
switch (i)
{
case 0:
cout << j + 1 << ":" << " " << num(1) << "-" << num(2) << "=" << "\n";
examplefile << j + 1 << ":" << " " << num(1) << "+" << num(2) << "=" << "\n";
break;
case 1:
cout << j + 1 << ":" << " " << num(1) << "-" << num(2) << "=" << "\n";
examplefile << j + 1 << ":" << " " << num(1) << "-" << num(2) << "=" << "\n";
break;
case 2:
cout << j + 1 << ":" << " " << num(1) << "*" << num(2) << "=" << "\n";
examplefile << j + 1 << ":" << " " << num(1) << "*" << num(2) << "=" << "\n";
break;
case 3:
n = num(2);
if (n != 0)
{
cout << j + 1 << ":" << " " << num(1) << "/" << n << "=" << "\n";
examplefile << j + 1 << ":" << " " << num(1) << "/" << n << "=" << "\n";
}
else
{
j--;
}
break;
}
}
break;
}
}
}
examplefile.close();
return 0;
}
(3)感想
经过这次博客作业,自己了解了GIT基本用法和基本操作,对如何管理自己代码有了一定的认知,但在实际的操作中,还是遇到了一些困难,按照教程还是遇到了一些意想不到的问题和困难,耽误了许多的时间,好在最后通过百度解决了问题。在代码题的解决过程中,困难度还是比初看题目时复杂得多,感觉还是有点吃力,这说明自己的代码量累计还不够,还需要多实践实践。