示例#1
0
 public void Reset()
 {
     //N1 = null;
     //N2 = null;
     Operazione = null;
     numeri     = new List <decimal>();
 }
示例#2
0
        private IOperazione CreaOperazione(string operazione)
        {
            IOperazione result = null;

            switch (operazione)
            {
            case "+":
                result = new Addizione();
                break;

            case "-":
                result = new Sottrazione();
                break;

            case "*":
                result = new Moltiplicazione();
                break;

            case "/":
                result = new Divisione();
                break;

            default:
                throw new ArgumentException("Operazione non supportata");
            }

            return(result);
        }
示例#3
0
        public IOperazione Crea(string operazione)
        {
            IOperazione result = null;

            Func <IOperazione> function = null;

            if (this.hashOperazioni.TryGetValue(operazione, out function))
            {
                result = function();
            }

            return(result);
        }
示例#4
0
        public void SalvaOperazione(string operatore)
        {
            switch (operatore)
            {
            case "+":
                Operazione = new Addizione();
                break;

            case "-":
                Operazione = new Sottrazione();
                break;

            case "×":
                Operazione = new Moltiplicazione();
                break;

            case "÷":
                Operazione = new Divisione();
                break;

            default:
                break;
            }
        }
示例#5
0
        public decimal EseguiOperazione(string operazione, decimal numero1, decimal numero2)
        {
            IOperazione strategia = CreaOperazione(operazione);

            return(strategia.Esegui(numero1, numero2));
        }