using
using
using
namespace
{
/// <summary>
/// 运算类
/// </summary>
public class
{
private double
private double
/// <summary>
/// 数字A
/// </summary>
public double
{
get
{
return
}
set
{
_numberA = value;
}
}
/// <summary>
/// 数字B
/// </summary>
public double
{
get
{
return
}
set
{
_numberB = value;
}
}
/// <summary>
/// 得到运算结果
/// </summary>
/// <returns></returns>
public virtual double
{
double
return
}
}
/// <summary>
/// 加法类
/// </summary>
class
{
public override double
{
double
result = NumberA + NumberB;
return
}
}
/// <summary>
/// 减法类
/// </summary>
class
{
public override double
{
double
result = NumberA - NumberB;
return
}
}
/// <summary>
/// 乘法类
/// </summary>
class
{
public override double
{
double
result = NumberA * NumberB;
return
}
}
/// <summary>
/// 除法类
/// </summary>
class
{
public override double
{
double
if
throw new Exception("除数不能为0。");
result = NumberA / NumberB;
return
}
}
/// <summary>
/// 平方类
/// </summary>
class
{
public override double
{
double
result = NumberB * NumberB;
return
}
}
/// <summary>
/// 平方根类
/// </summary>
class
{
public override double
{
double
if
throw new Exception("负数不能开平方根。");
result = Math.Sqrt(NumberB);
return
}
}
/// <summary>
/// 相反数类
/// </summary>
class
{
public override double
{
double
result = -NumberB;
return
}
}
/// <summary>
/// 运算类工厂
/// </summary>
class
{
public static Operation createOperate(string
{
null;
switch
{
case "+":
{
new
break;
}
case "-":
{
new
break;
}
case "*":
{
new
break;
}
case "/":
{
new
break;
}
case "sqr":
{
new
break;
}
case "sqrt":
{
new
break;
}
case "+/-":
{
new
break;
}
}
return
}
}
}
UML图: