第二次作业

GIT地址 地址链接
GIT用户名 BRYANT333
学号后五位 24240
博客地址 我的博客
作业链接 第二次作业地址

一、环境配置

win7,vs2019,Git

因为上学期学习面向对象程序 设计,所以已经安装了vs2019,Git如下:

二、代码思路

分别需要产生随机的运算数字和随机的运算符,再进行运算,且运算时可以选择题目的数量,数字的取值范围,以及在最后可以查询正确的结果。

代码如下:`using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.IO;

//zw简单四则运算

namespace Calculator

{

public class SiZeYuanSuan

{

int num_g, num_f;

double[] Result;

Random rdm = new Random();

//构造函数,传值

public SiZeYuanSuan(int num_g, int num_f)

{

this.num_g = num_g;

this.num_f = num_f;

Result = new double[num_g];

}

//产出随机运算

public void YunSuanSC()

{

for (int i = 0; i < num_g; i++)

{

int a = rdm.Next(num_f) + 1;//生成第一个数

int b = rdm.Next(num_f) + 1;//生成第二个数

char f = YunSuanFu();//取出运算符

//打印题目

Console.WriteLine("{0}、{1} {2} {3} = ", i + 1, a, f, b);

//存储结果

if (f == '+') { Result[i] = a + b; }

else if (f == '-') { Result[i] = a - b; }

else if (f == '') { Result[i] = a * b; }

else { Result[i] = Math.Round(Convert.ToDouble(a) / b, 3); }

}

}

//产出随机运算符

char YunSuanFu()

{

int k = rdm.Next(4);

char fu = '+';

switch (k)

{

case 0: fu = '+'; break;

case 1: fu = '-'; break;

case 2: fu = '
'; break;

case 3: fu = '/'; break;

}

// Console.WriteLine(fu);

return fu;

}

//查看答案

public void SeeResult()

{

foreach (double i in Result)

{

Console.WriteLine(i.ToString());

}

    }
static void Main(string[] args)
{
Console.WriteLine("请输入题目个数:");
int num_g = int.Parse(Console.ReadLine());//确定题目个数 Console.WriteLine("请输入运算数字范围:");
int num_f = int.Parse(Console.ReadLine());//运算范围 SiZeYuanSuan YS = new SiZeYuanSuan(num_g, num_f);
YS.YunSuanSC(); Console.WriteLine("是否查看答案(YorN):");
char See = char.Parse(Console.ReadLine());
if (See == 'Y' || See == 'y')
{
Console.WriteLine("答案如下");
YS.SeeResult();
}
else
{
Console.WriteLine("感谢使用!");
}
string str = Console.ReadLine();
}
}

}`

运行结果如下图:



在克隆时候忘记截图了,很难受。

单元测试



在进行测试时发现始终无法判断代码正确性,希望老师或者助教能进行讲解。

总结

在这次的作业完成过程中,深深的感到自己的c#语言能力还差的远,编程能力完全不够,很多的东西都需要在网上寻找帮助以及同学的提醒;同时也在单元测试这一块有很大的问题,始终找不到判断代码的方法。

但是也是在慢慢的回忆、摸索的过程中,也学到了很多的知识,有以前的,也有 本次作业中新学的。

第二次作业hzw的更多相关文章

  1. 耿丹CS16-2班第二次作业汇总

    -- Deadline: 2016-09-28 12:00 -- 作业内容:http://www.cnblogs.com/huangjunlian/p/5891726.html -- 第二次作业总结: ...

  2. JAVA第二次作业展示与学习心得

    JAVA第二次作业展示与学习心得 在这一次作业中,我学习了复选框,密码框两种新的组件,并通过一个邮箱登录界面将两种组件运用了起来.具体的使用方法和其他得组件并没有什么大的不同. 另外我通过查阅资料使用 ...

  3. 20169212《Linux内核原理与分析》第二周作业

    <Linux内核原理与分析>第二周作业 这一周学习了MOOCLinux内核分析的第一讲,计算机是如何工作的?由于本科对相关知识的不熟悉,所以感觉有的知识理解起来了有一定的难度,不过多查查资 ...

  4. 软件工程(QLGY2015)第二次作业点评(随机挑选20组点评)

    相关博文目录: 第一次作业点评 第二次作业点评 第三次作业点评 说明:随机挑选20组点评,大家可以看看blog名字,github项目名字,看看那种是更好的,可以学习,每个小组都会反应出一些问题,希望能 ...

  5. 程序设计第二次作业<1>

    面向对象程序设计第二次作业<1> Github 链接:https://github.com/Wasdns/object-oriented 题目: <1>第一次尝试 我立马认识到 ...

  6. homework-02,第二次作业——寻找矩阵最大子序列和

    经过漫漫漫~~~~~~~~~~~~~~长的编译和调试,第二次作业终于告一段落了 先放出源码,思路后面慢慢道来 #include<stdio.h> #include<stdlib.h& ...

  7. 20169210《Linux内核原理与分析》第二周作业

    <Linux内核原理与分析>第二周作业 本周作业分为两部分:第一部分为观看学习视频并完成实验楼实验一:第二部分为看<Linux内核设计与实现>1.2.18章并安装配置内核. 第 ...

  8. SQL 第二章 作业

    /*第二章 作业*/ create table S ( sno char(2) NOT NULL UNIQUE, sname char(3), city char(2) ); alter table ...

  9. 软件工程(GZSD2015)第二次作业小结

    第二次作业,从4月7号开始,陆续开始提交作业.根据同学们提交的作业报告,相比第一次作业,已经有了巨大改变,大家开始有了完整的实践,对那些抽象的名词也开始有了直观的感受,这很好.然后有一些普遍存在的问题 ...

随机推荐

  1. LightOJ - 1265 Island of Survival (概率dp)

    You are in a reality show, and the show is way too real that they threw into an island. Only two kin ...

  2. [POJ2528]Mayor's posters(离散化+线段树)

    Mayor's posters Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 70365   Accepted: 20306 ...

  3. 国内免费CMS系统大全

    一.ASP类的CMS程序 1.动易CMS 官方网址:http://www.powereasy.net/(可免费下载) 特点:完全免费,ACCESS数据库,主要功能模块:文章频道.下载频道.图片频道.留 ...

  4. 深入谷歌和甲骨文旷日持久的版权战争,趣味科普当前最火的编程语言JAVA的前世今生

    这篇文章是我在B站上投稿的一个科普java的视频文案,内容如标题,感兴趣的码农朋友可以移步观看https://www.bilibili.com/video/av81171108/ 在过去短短几十年间, ...

  5. 经典问题(c++/python)素数、杨辉三角(金字塔型)、统计单词数、简单计算器、密码安全程度、凯撒密码加密、汉诺塔 (python课设实验实例)-- biaobiao88

    [编写程序,输人一个大于2的自然数,然后输出小于该数字的所有素数组成的列表.]所谓素数,是指除了1和自身之外没有其他因数的自然数,最小的素数是2,后面依次是3.5.7.11.13... c++代码: ...

  6. ABP-多个DbContext实现事物更新

    1.在ABP中其实多个DbContext并没有在同一个事物中执行,那他是如何操作的,我的理解是 在不使用事物的时候 把多个DbContext存放在ActiveDbContexts 在调用工作单元的时候 ...

  7. Maven 生命周期的概念(指令默认顺序执行)

    生命周期的概念 IDEA中使用maven构建项目都集中放到了窗口右侧"Maven Projects"中,点击该区域可以直观的看到,maven中几个常用指令都归类为LifeCycle ...

  8. CF1272D. Remove One Element 题解 动态规划

    题目链接:http://codeforces.com/contest/1272/problem/D 题目大意: 给你一个长度为 \(n\) 的数组,你最多删除一个元素(也可以不删),求此条件限制下的最 ...

  9. 洛谷P1220 关路灯 题解 区间DP

    题目链接:https://www.luogu.com.cn/problem/P1220 本题涉及算法:区间DP. 我们一开始要做一些初始化操作,令: \(p[i]\) 表示第i个路灯的位置: \(w[ ...

  10. ipaclient 4.5.4 requires jinja2, which is not installed. rtslib-fb 2.1.63 has requirement pyudev>=0.16.1, but you'll have pyudev 0.15 which is incompatible. ipapython 4.5.4 has requirement dnspython>=