第二次作业

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. VSCode提示没有权限,无法保存文件问题

    重装了系统之后,重新打开了VSCode发现无法保存修改的文件,激活系统后发现还是无法保存文件,都是提示权限问题,原因在于文件夹权限继承并不是我所登录的这个用户,接着我试着按照网上的方法,在文件夹后,右 ...

  2. python 多线程两种实现方式,Python多线程下的_strptime问题,

    python 多线程两种实现方式 原创 Linux操作系统 作者:杨奇龙 时间:2014-06-08 20:24:26  44021  0 目前python 提供了几种多线程实现方式 thread,t ...

  3. Team Foundation Server 2015使用教程【2】:默认团队成员添加

    官方文档:https://www.visualstudio.com/en-us/docs/setup-admin/add-users

  4. WebGPU学习(十):介绍“GPU实现粒子效果”

    大家好,本文介绍了"GPU实现粒子效果"的基本思想,并推荐了相应的学习资料. 本文学习webgpu-samplers->computeBoids示例,它展示了如何用compu ...

  5. vue新增属性响应式更新的问题

    根据官方文档定义: 如果在实例创建之后添加新的属性到实例上,它不会触发视图更新. 受现代 JavaScript 的限制 (以及废弃 Object.observe),Vue 不能检测到对象属性的添加或删 ...

  6. jsp中获取页面的相对路径

    1.在jsp页面的上方加上这段java代码 <%//        request.getContextPath() 返回当前页面所在的应用的名字://        request.getSc ...

  7. python之面向对象中的多态

    直接看代码: class Dog: def __init__(self,name): self.name = name def play(self): print("%s在汪汪汪" ...

  8. cocos2dx Quaternion 四元数(1/2)

    这篇文章只是我学完四元数之后的一些理解,其实是对别人理解的理解,有些地方我理解但是没有写下来,如果真的想深入的学习四元数,建议从学习复数开始. 这个知识点需要几何想象的天赋和学习的耐心,缺一不可,慢慢 ...

  9. 洛谷P1832 A+B Problem(再升级) 题解 完全背包方案计数

    题目链接:https://www.luogu.com.cn/problem/P1832 题目大意: 给定一个正整数n,求将其分解成若干个素数之和的方案总数. 解题思路: 首先找到所有 \(\le n\ ...

  10. linux搭建简单的web服务器

    主要想法是:使用虚拟机的Ubuntu系统搭建http服务器,然后在window的浏览器上测试 1.先测试windows和虚拟机上的ubuntu能否相互ping通 2.下载http.tar.gz并拷贝到 ...