实现四则

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

 

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

namespace ConsoleApplication2
{
class Program
{
public static void Ni()

{
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();
}
static void Main(string[] args)
{


Ni();

}

//定义委托
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 o = 0;
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}", nu(x, y));
if (sum == n)
{
Console.WriteLine("你的结果正确!");
i++;
right++;
Wo();
}
else if (n == 99)
{
Jieshu();

}

else if (n == 00)
{
Jieshu();

Program.Ni();

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


}
public static void Jieshu()
{

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

}
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 if (n == 00)
{
Jieshu();

Program.Ni();

 

}
else
{
Console.WriteLine("你的结果不正确");
i++;
o++;
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 if (n == 00)
{
Jieshu();

Program.Ni();

 

}
else
{
Console.WriteLine("你的结果不正确");
i++;
o++;
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 if (n == 00)
{
Jieshu();

Program.Ni();

 

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

}
}

  

 

 

 

 

 

 

总结还蛮累的,第一次做这样的程序,感觉困难还是很多,要百度,有些地方还是有些不太明白,但是会努力的。

 计划我用了大约有二十分钟,查资料大概有四十分钟,完成有30分钟吧,剩下的时间就是修改了。

posted @ 2015-10-01 09:16  懒懒的  阅读(162)  评论(1)    收藏  举报