第二次作业

第二次作业——熟悉使用工具

GIT地址 https://github.com/226DEBABA
GIT用户名 226DEBABA
学号后五位 24228
博客地址 https://www.cnblogs.com/1111F/
作业链接 https://edu.cnblogs.com/campus/xnsy/GeographicInformationScience/homework/7582

1.工作环境配置

安装Visual Studio 2019,安装Git。
在这里插入图片描述
在这里插入图片描述

2.代码设计思路

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Threading;

namespace Calculator
{
    public class Program
    {
        public static string path = @"D:123.txt";
        static void Main(string[] args)
        {
            int n;
            Console.WriteLine("算式数:");
            n = Convert.ToInt32(Console.ReadLine());
            GetSubject(n);
        }

        static public void GetSubject(int n)
        {
            StreamWriter sw = new StreamWriter(path);
            Random rdm = new Random();
            int[] num = new int[4];
            char[] ch = new char[3];
            for (int i = 0; i < n; i++)
            {
                int cnum = rdm.Next(2, 4);
                num[cnum] = rdm.Next(101);
                double resultTest = num[0];
                long result = num[0];
                string subject = num[0].ToString();
                for (int m = 0; m < cnum; m++)
                {
                    num[m] = rdm.Next(101);
                    int r = rdm.Next(4);
                    switch (r)
                    {
                        case 0:
                            ch[m] = '+'; break;
                        case 1:
                            ch[m] = '-'; break;
                        case 2:
                            ch[m] = '*'; break;
                        case 3:
                            ch[m] = '/'; break;
                        default:
                            break;
                    }
                    if (ch[m] == '/' && num[m] == 0)
                    {
                        m--;
                        continue;
                    }
                    switch (ch[m])
                    {
                        case '+':
                            resultTest = resultTest + (double)num[m]; break;
                        case '-':
                            resultTest = resultTest - (double)num[m]; break;
                        case '*':
                            resultTest = resultTest * (double)num[m]; break;
                        case '/':
                            resultTest = resultTest / (double)num[m]; break;
                        default:
                            break;
                    }
                    if (resultTest != Convert.ToDouble(Convert.ToInt64(resultTest)))
                    {
                        m--;
                        continue;
                    }
                    switch (ch[m])
                    {
                        case '+':
                            result = result + num[m]; break;
                        case '-':
                            result = result - num[m]; break;
                        case '*':
                            result = result * num[m]; break;
                        case '/':
                            result = result / num[m]; break;
                        default:
                            break;
                    }
                    subject += ch[m] + num[m].ToString();
                }
                subject += "=" + result.ToString();
                sw.WriteLine(subject);
            }
            sw.Close();
            Console.WriteLine("已将算式写入:" + path);
            Console.ReadLine();
        }
    }
}

3.克隆项目以及提交代码

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.单元测试和回归测试

单元测试
在这里插入图片描述
效能分析
在这里插入图片描述

5.感想

难,但是学了很多东西,希望下次简单点 ,我顶不住了。

posted @ 2019-09-20 11:35  别ban亚索  阅读(129)  评论(1编辑  收藏  举报