简易四则运算

题目:编写一个能对0--10之间的整数进行四则运算的“软件”
              程序能接收用户输入的整数答案,并判断对错
              程序结束时,统计出答对、答错的题目数量。

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace Simple_arithmetic //简易四则运算

{

class Program

{

static void Main(string[] args)

{

Console.WriteLine("请输入您想做的运算: ");

Console.WriteLine("输入 【+】 表示加法");

Console.WriteLine("输入 【-】 表示减法");

Console.WriteLine("输入 【*】 表示乘法");

Console.WriteLine("输入 【/】 表示除法");

Console.WriteLine("输入【 -1】表示结束");

Console.WriteLine("====================");

//首先声明

string opt = Console.ReadLine();

switch (opt)   //使用switch语句

{

case "+":

Opp.Add();

break;

case "-":

Opp.Sub();

break;

case "*":

Opp.Mul();

break;

case "/":

Opp.Div();

break;

}

Console.Read();

}

}

public delegate double Num(double x, double y);//定义委托
    public class SimpleMath
    {
        public static double Add(double x, double y)
        { return x + y; }
        public static double Sub(double x, double y)
        { return x - y; }
        public static double Mul(double x, double y)
        { return x * y; }
        public static double Div(double x, double y)
        { return x / y; }
    }

public class Opp

{

public static int fault = 0;

public static int right = 0;

public static void Add()//加法,实现加法功能

{

double sum, op;

Random p = new Random();

double x = p.Next(0, 10);

double y =p.Next(0, 10);

sum = x + y;

Console.WriteLine("{0}+{1}=", x, y);

Console.WriteLine("请输入结果:");

op = double.Parse(Console.ReadLine());

Num um = new Num(SimpleMath.Add);

Console.WriteLine("正确结果是:");

Console.WriteLine("{0}+{1}={2}", x, y, um(x, y));

if (sum == op)

{

Console.WriteLine("您的结果正确!");

fault++;                                                                                                                        
                   right++;

Add();

}

else if (op == -1)

{

end();

}

else

{

Console.WriteLine("您的结果错误!");

fault++;

Add();

}

}

public static void end()

{

Console.WriteLine("您已退出计算!您共做{0}道题,答对{1}", fault, right);

}

public static void Sub()//减法,实现减法功能

{

double jan, op;

Random p = new Random();

double x =p.Next(0, 10);

double y = p.Next(0, 10);

jan = x - y;

Console.WriteLine("{0}-{1}=", x, y);

Console.WriteLine("请输入结果:");

op = double.Parse(Console.ReadLine());

Num um = new Num(SimpleMath.Sub);

Console.WriteLine("正确结果是:");

Console.WriteLine("{0}-{1}={2}", x, y, um(x, y));

if (jan == op)

{

Console.WriteLine("您的结果正确!");

fault++;

right++;

Add();

}

else if (op == -1)

{

end();

}

else

{

Console.WriteLine("您的结果错误!");

fault++;

Sub();

}

}

public static void Mul()//乘法,实现乘法功能

{

double cen, op;

Random p = new Random();

double x = p.Next(0, 10);

double y = p.Next(0, 10);

cen = x * y;

Console.WriteLine("{0}*{1}=", x, y);

Console.WriteLine("请输入结果:");

op = double.Parse(Console.ReadLine());

Num um = new Num(SimpleMath.Mul);

Console.WriteLine("正确结果是:");

Console.WriteLine("{0}*{1}={2}", x, y, um(x, y));

if (cen == op)

{

Console.WriteLine("您的结果正确!");

fault++;

right++;

Add();

}

else if (op == -1)

{

end();

}

else

{

Console.WriteLine("您的结果错误!");

fault++;

Mul();

}

}

public static void Div()//除法,实现除法功能
        {
            double chu, op;
            Random p = new Random();
            double x = p.Next(0, 10);
            double y = p.Next(0, 10);
            chu = x / y;
            Console.WriteLine("{0}/{1}=", x, y);
            Console.WriteLine("请输入结果:");
            op = double.Parse(Console.ReadLine());
            Num um = new Num(SimpleMath.Div);
            Console.WriteLine("正确结果是:");
            Console.WriteLine("{0}/{1}={2}", x, y, um(x, y));
            if (chu == op)
            {
                Console.WriteLine("您的结果正确!");
                fault++;
                right++;
                Add();
            }
            else if (op == -1)
            {
                end();
            }
            else
            {
                Console.WriteLine("您的结果错误!");
                fault++;
                Div();
            }
        }
    }
}

PSP分析表

《1》 需求分析:

刚开始设计时,按照要求来做的,没有考虑太多。结果总是出错,并且测试起来 ,不像是一个“智能化”的小程序。

后来回想,老师以前说过,做程序要站在用户角度考虑,以用户的身份去设计、分析。这样才能做得相对比较完整。

《2》 具体设计思路:

这个程序做了两遍,刚开始是用窗体做的。先前老师让我们做过类似的例子。结果越做越糟,总是出错。然后我就用

控制台来做的。通过翻查教材,运用了一直不太能熟练掌握的委托和一些循环语句。中间还有我朋友的指导(他学的比我好

通过和他的讨论,到代码的具体实现。感觉自己进步了许多

《3》思考:

通过这次的测试,感觉自己的逻辑思维仍有欠缺。一些简单的语句,需要仔细思考。才能够想明白,与其他同学的差距

仍需要努力才能拉低。不过这次还是有不小的收获的!

时间: 2024-10-12 21:52:19

简易四则运算的相关文章

用android studio编写2-4个数的简易四则运算

用android studio编写2-4个数的简易四则运算,首先新建一个安卓工程,进行页面布局 代码如下: JAVA代码:                  运行结果展示: 这个程序进行除法预算时显示不出小数点,并且实现运算的方法过于繁琐,需要写出所有的可能算式,只能说是非常勉强的达到了使用需求,后期还需进一步的修改,加强.

结对编程:简易四则运算

功能:进行简易的四则运算,并根据给出的结果判断正误. 实现:使用java的图形化界面实现. package six; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.lang.*; class Num{ private int a; public Num() { this.a = (int)(Math.random()*100); } public int get_num() { retu

结对编程——paperOne基于java web的简易四则运算出题网站

项目成员:张金生     张政 需求分析: 1.要进行四则运算: 2.运算题目随机: 3.进行对错判断: 4.整数运算. 程序概要: 1.用JSP实现: 2.用户可选择题目数量: 3.答题页用表格列出: 4.包含用来填写答案的输入框: 5.答完后点击提交会直接显示相应题目的对错. 实现过程: 数据结构主要用到了数组 题目生成: 1 public String generateQuestion(int numOfOperand, int rangeMin, int rangMax, boolean

简易四则运算生成程序——第一次改进后的单元测试

测试项目:减一四则运算生成程序 项目成员:张金生  张政 工程地址:https://coding.net/u/jx8zjs/p/paperOne/git ssh://[email protected]:jx8zjs/paperOne.git 测试单元概览: 1. Fraction: 分数类,支持分数加减乘除法,约分,取相反数等 2.QuestionGen:题目生成类,支持生成各种难度的题目,和答案. 待测单元: Fraction类: 1 public class Fraction { 2 pub

任务2--安装Intellj IDEA,编写一个简易四则运算小程序,并将代码提交到GitHub

我的GitHub地址为:https://github.com/Orangeyc123 首先呢,我并没有完整的完成任务,我觉得主要问题有以下几个 1.由于之前都没有听说过intellj IDEA这个软件,安装的时候就碰到了好多问题.对于我这个人来说呢,有一点很大的毛病就是对于从来没见过不知道的东西有一种畏惧心理.怕自己装的不对,怕自己有哪一个步骤和别人不一样而产生不同的结果. 比如 之前一直没有遇到过这种情况,显然有些不知所措,不过还好,问了学长以后我想以后出现这种问题应该so easy. 下载并

任务02——安装 Intellj IDEA,编写一个简易四则运算小程序,并将代码提交到 GitHub

GITHUB:  https://github.com/lalacllla 代码(不完善): https://github.com/lalacllla/CALTMP/blob/master/src/caltmp.java 1.Intellj IDEA的安装和项目的新建并没有什么困难,个人认为Intellj IDEA相对于ECLIPSE更容易上手,界面更加简洁. 2.初步了解Git以及Github的使用,如何简单的创建一个repository,如何上传自己的代码. 3.代码部分还是有比较多的问题需

简易四则运算小程序二

改进四则运算程序 import java.util.*; public class Yunsuan { //随机数字 public static int suiji_num(){ return new Random().nextInt(100)+1; } //随机运算符 public static String suiji_char(){ if(suiji_num()%4==1){ return "+"; } else if(suiji_num()%4==2){ return &quo

paperOne基于java web的简易四则运算出题网站

项目成员:张金生     张政 需求概要 1.运算数均为正整数 2.包含的运算符有+,-,*,/ 3.除法运算结果为整除运算 4.批量生成题目并判题 核心功能分析 1.题目生成——java后端 <待编辑> 2.对用户提交的答案进行评定——javascript前端 <待编辑> 部分功能实现 题目生成 1 public String generateQuestion(int numOfOperand, int rangeMin, int rangMax, boolean isInt,

简易四则运算生成程序——添加GUI支持

项目成员:张金生     张政 工程地址: https://coding.net/u/jx8zjs/p/paperOne/git ssh://[email protected]:jx8zjs/paperOne.git 需求: 1.GUI支持:用户界面新增支持 Windows GUI,同时保留原有命令行下所有功能. 2.配置文件:提供用户可用文本编辑器修改的配置文件,在其中包括用户名.当前难度.总答题数.答错题数.答对题数. 3.错题本:可回放做错的题目,提供再次练习的机会/删除特定错题. 设计: