• ASP.NET上实现


    ASP.NET上实现

    fengzhuang.cs:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;


    public class fengzhuang
    {

    private double a = 0;
    private double b = 0;

    public double A
    {
    get { return a; }
    set { a = value; }
    }
    public double B
    {
    get { return b; }
    set { b = value; }
    }
    public virtual double GetResult()
    {
    double result = 0;
    return result;
    }

    }

    class Add :fengzhuang
    {
    public override double GetResult()
    {
    double result = 0;
    result = A + B;
    return result;
    }
    }

    class Sub : fengzhuang
    {
    public override double GetResult()
    {
    double result = 0;
    result = A - B;
    return result;
    }
    }

    class Mul : fengzhuang
    {
    public override double GetResult()
    {
    double result = 0;
    result = A * B;
    return result;
    }
    }

    class Div :fengzhuang
    {
    public override double GetResult()
    {
    double result = 0;
    if (B == 0)
    throw new Exception("除数不能为0");
    result = A / B;
    return result;
    }
    }

    public class Factory
    {
    public static fengzhuang Cal(string operate)
    {
    fengzhuang oper = null;
    switch (operate)
    {
    case "+":
    oper = new Add();
    break;
    case "-":
    oper = new Sub();
    break;
    case "*":
    oper = new Mul();
    break;
    case "/":
    oper = new Div();
    break;
    }
    return oper;
    }
    }

    具体代码:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;

    public partial class index : System.Web.UI.Page
    {
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Cal_Click(object sender, EventArgs e)
    {
    Calculator oper;
    string strOperate = DropDownList1.SelectedItem.ToString();
    oper = Factory.Cal(strOperate);
    oper.A = Convert.ToDouble(TextBox1.Text);
    oper.B = Convert.ToDouble(TextBox2.Text);
    string answer = Convert.ToString(oper.GetResult());

    string result = TextBox1.Text + DropDownList1.SelectedItem.ToString() + TextBox2.Text;
    if (TextBox3.Text == answer) 
    {
    Response.Write("<script>alert('回答正确!')</script>"); 
    ListBox1.Items.Add(result + "=" + TextBox3.Text.Trim());
    }

    else 
    {
    Response.Write("<script>alert('答题错误!')</script>"); 
    ListBox1.Items.Add(result + "=" + TextBox3.Text.Trim() );
    }
    TextBox1.Text = "";
    TextBox2.Text = "";
    TextBox3.Text = "";
    }
    }

  • 相关阅读:
    如何才算掌握JavaSE?
    JAVA学习之路:不走弯路,就是捷径
    让IT人远离慢性疲劳,长时间操作电脑需要养成的几个好习惯
    成为Java高手的25个学习目标非常经典
    程序员如何走到金字塔最高层
    jQuery强大的jQuery选择器 (详解)[转]
    不学必悔
    nginx的核心配置
    java中使用MemCached
    java 使用反射中的几个方法区别
  • 原文地址:https://www.cnblogs.com/zj15517225953/p/5024073.html
Copyright © 2020-2023  润新知