实现四则

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

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入你想做的运算+,-,*,/ ");
string m = Console.ReadLine() ;
switch (m)
{
case "+":
Shu.Wo();
break;
case "-":
Shu.Sub();
break;
case "*":
Shu.Sheng();
break;
case "/":
Shu.Chu();
break;

}
Console.ReadLine();
}
}

//定义委托
public delegate double Num(double x,double y);
public class Math
{
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 Sheng(double x, double y)
{ return x * y; }
public static double Chu(double x, double y)
{ return x / y; }
}
public class Shu


public static int i = 0;
public static int right = 0;
public static void Wo()
{

double sum, n;
Random r = new Random();
double x = r.Next(0,10);
double y= r.Next(0, 10);
sum = x + y;
Console.WriteLine("{0}+{1}=",x,y);
Console.WriteLine("请输入你的结果:");
n=double.Parse( Console.ReadLine());
Num nu = new Num(Math.Add);
Console.WriteLine("正确结果是:");
Console.WriteLine("{0}+{1}={2}",x,y,nu(x,y));
if (sum == n)
{
Console.WriteLine("你的结果正确!");
i++;
right++;
Wo();

}
else if (n == 99)
{
Jieshu();

}
else
{
Console.WriteLine("你的结果不正确");
i++;
Wo();
}
}
public static void Jieshu()
{

Console.WriteLine("你好,你已退出计算!你公做{0}道题,答对{1}",i,right);

}
public static void Sub()
{

double sum, n;
Random r = new Random();
double x = r.Next(0, 10);
double y = r.Next(0, 10);

sum = x - y;
Console.WriteLine("{0}-{1}=", x, y);
Console.WriteLine("请输入你的结果:");
n = double.Parse(Console.ReadLine());
Num nu = new Num(Math.Sub);
Console.WriteLine("正确结果是:");
Console.WriteLine("{0}-{1}={2}", x, y, nu(x, y));
if (sum == n)
{
Console.WriteLine("你的结果正确!");
i++;
right++;
Wo();

}
else if (n == 99)
{
Jieshu();

}
else
{
Console.WriteLine("你的结果不正确");
i++;
Sub();
}
}
public static void Sheng()
{

double sum, n;
Random r = new Random();
double x = r.Next(0, 10);
double y = r.Next(0, 10);
sum = x *y;
Console.WriteLine("{0}*{1}=", x, y);
Console.WriteLine("请输入你的结果:");
n = double.Parse(Console.ReadLine());
Num nu = new Num(Math.Sheng);
Console.WriteLine("正确结果是:");
Console.WriteLine("{0}*{1}={2}", x, y, nu(x, y));
if (sum == n)
{
Console.WriteLine("你的结果正确!");
i++;
right++;
Wo();

}
else if (n == 99)
{
Jieshu();

}
else
{
Console.WriteLine("你的结果不正确");
i++;
Sheng();
}
}
public static void Chu()
{

double sum, n;
Random r = new Random();
double x = r.Next(0, 10);
double y = r.Next(0, 10);
sum = x / y;
Console.WriteLine("{0}/{1}=", x, y);
Console.WriteLine("请输入你的结果:");
n = double.Parse(Console.ReadLine());
Num nu = new Num(Math.Chu);
Console.WriteLine("正确结果是:");
Console.WriteLine("{0}/{1}={2}", x, y, nu(x, y));
if (sum == n)
{
Console.WriteLine("你的结果正确!");
i++;
right++;
Wo();

}
else if (n == 99)
{
Jieshu();

}
else
{
Console.WriteLine("你的结果不正确");
i++;
Chu();
}
}

}

}

时间: 2024-10-06 23:36:42

实现四则的相关文章

结对编程1_四则运算器_博客1

一.我和小伙伴的合照 结对人员:13061163  赵庶宏 13061196  付帅 是不是感觉我俩很有爱?其实,这都是被逼的,dealline是第一生产力!!!! 二.结对编程的优点 三.覆盖率 覆盖率 95.72% ,其实也并不高..... 四.UML 五.关键算法 结对编程1_四则运算器_博客1

基于MVP模式实现四则运算器

基于MVP模式四则运算器 来到新东家,项目的框架采用的是MVP模式,刚来公司的时候,项目经理给予分配小任务,首先熟悉MVP模式,而后普通的四则运算器的实现使用MVP分层.这里主要回顾当时做任务时候的对于MVP模式的理解. 我是一名.Net开发工程师,使用语言为C#.微软在桌面客户端的开发上,提供的是WinForm和WPF两种基于.Net Framework的平台,现在的项目也是主要以Winform实现.传统Winform程序如果不予以分层的话,代码耦合十分严重.为解决代码耦合性问题,现在主流的分

软件工程学习之小学四则混合运算出题软件 Version 1.00 设计思路及感想

对于小学四则混合运算出题软件的设计,通过分析设计要求,我觉得为了这个软件在今后便于功能上的扩充,可以利用上学期所学习的<编译原理>一课中的LL1语法分析及制导翻译的算法来实现.这样做的好处有以下几点: 1. 由于LL1制导翻译是一项成熟且可靠的技术,并且其递归下降算法易于改编为算式生成算法: 2. 我们有系统的方法可以获得较复杂表达式的LL1文法,则可以方便地生成形式丰富的算式: 3.由于四则混合运算中需要考虑运算优先级的问题,那么采用LL1分析器可以很方便的实现计算表达式的功能: 4.当用户

高级四则运算器—结对项目反思(193 &amp; 105)

高级四则运算器—结对项目反思(193 & 105) 本周我和一位韩国同学(71061105)一起结对编程完成了我们的结对项目——高级的小学四则运算题目生成器. PSP表格   PSP2.1 Personal Software Process Stages Time Planning 计划 · Estimate · 估计这个任务需要多少时间 1.5h Development 开发 · Analysis · 需求分析 (包括学习新技术) 3h · Design Spec · 生成设计文档 5h ·

基于MFC的含四则混合运算的计算器

今天无意间发现win7系统的标准型计算器连最基本的四则混合运算都没做,刚刚好公司给了我一个工作任务,就是用MFC实现一个含四则混合运算的计算器. 我在网上查询资料,发现大部分只是实现了基本的加减乘除运算,而含四则混合运算的也没有能够说得清楚明白.于是我搜索四则混合运算算法,发现要实现四则混合运算,就要用到逆波兰算法,而使用逆波兰算法,就要先把算术式从中缀表达式转换为后缀表达式. 所谓中缀表达式,就是我们平常的算术式,例如:1+2-3*4/5. 而后缀表达式,就是将运算符写在操作数之后,上面算术式

四则运算器初步成果小结

目前四则运算程序已经完成了整数之间的加减乘除,随机生成题目,用户输入并判断答案对错.下一步,实现分数之间的出题.fighting....(然而我不会发代码,233333,只能贴图了) package software; public class fraction { private int numerator; private int denominator; public fraction(int numerator, int denominator){ this.numerator=nume

【SE】Week3 : 四则运算式生成评分工具Extension&amp;Release Version(结对项目)

Foreword 此次的结对项目终于告一段落,除了本身对软件开发的整体流程有了更深刻的了解外,更深刻的认识应该是结对编程对这一过程的促进作用. 在此想形式性但真心地啰嗦几句,十分感谢能端同学能够不厌其烦地接受我每次对软件的修改提议,并在代码实现过程中为团队贡献了许多人性化的tips: 另外,他积极好学的心态也很让我佩服.从初入面向对象,数据结构的使用,实际工程的开发,他快速地掌握了其中的技巧: 并在过程中不嫌辛苦地和我一起熬夜,才能在短短48h内高效利用时间,开发出这款颇多功能的软件.感谢!=)

四则运算器改进

在四则运算器基本功能上添加了判断正误的功能. 引用自网上的简单四则运算器代码,加以修改. 代码如下: 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <time.h> 4 #include <math.h> 5  6 int main() 7 { 8     int i = 0; 9     int n = 0;10     int x = 0;11     int type;12     char

高级四则运算器—结对项目总结(193 &amp;105)

高级四则运算器—结对项目总结 为了将感想与项目经验体会分割一下,特在此新开一篇博文. 界面设计 啥都不说,先上图震慑一下... 上面的三个界面是我们本次结对项目的主界面,恩,我也觉得挺漂亮的!你问我界面设计花了多久?其实只有6个小时,然后6个小时中有2个小时都是为了一个bug,这个bug之后我们会提到,也是让我长了一回见识. 关于整个界面的美化 关于整个界面的美化,因为之前做Java的Swing开发,知道有这种控件的皮肤(Swing里是叫LAF=LookAndFeel),所以在一开始我就敲定了要

JAVA实现简单四则混合运算

JAVA实现简单四则混合运算,说明:该计算器支持实则混合运算,如 2*(3+1 )/ 4-3 *9+ 8/ 3*4- 5,则输出:-19.333332 需要说明的事括号必须是英文的.源码如下仅供学习: 运行后直接在Console里面敲然后回车即可 [1].[代码] [Java]代码 跳至 [1] ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36