コード例 #1
0
ファイル: Program.cs プロジェクト: agiglio71/IBL
        //static void DoUno()
        //{
        //    TheClass theClass = new TheClass();
        //    Int32ToString myDelegate = theClass.ConvertiInStringa;
        //    Console.WriteLine(myDelegate(5));
        //    Console.ReadLine();
        //}

        //static void DoDue()
        //{
        //    TheClass1 theClass1 = new TheClass1();
        //    TheClass2 theClass2 = new TheClass2();
        //    ClasseSenzaImplementazione theClass = new ClasseSenzaImplementazione();

        //    theClass.DelegatoIntero = theClass1.ConvertiInStringa;
        //    Console.WriteLine(theClass.DammiUnaStringa(5));

        //    theClass.DelegatoIntero = theClass2.ConvertiInStringa;
        //    Console.WriteLine(theClass.DammiUnaStringa(5));

        //    Console.ReadLine();
        //}

        //static void DoTre()
        //{
        //    TheClass1 theClass1 = new TheClass1();
        //    TheClass2 theClass2 = new TheClass2();
        //    ClasseSenzaImplementazione theClass = new ClasseSenzaImplementazione();

        //    theClass.DelegatoIntero = theClass1.ConvertiInStringa;
        //    Console.WriteLine(theClass.DammiUnaStringa(5));

        //    theClass.DelegatoIntero = theClass2.ConvertiInStringa;
        //    Console.WriteLine(theClass.DammiUnaStringa(5));

        //    Console.ReadLine();
        //}

        static void DoQuattro()
        {
            Calcolatrice calcolatrice = new Calcolatrice();

            //Local function
            Int32 somma(Int32 op1, Int32 op2)
            {
                return(op1 + op2);
            };
            Int32 divisione(Int32 op1, Int32 op2)
            {
                return(op1 / op2);
            };

            calcolatrice.AddCifra(1);
            calcolatrice.Operazione(somma);
            calcolatrice.AddCifra(5);

            Console.WriteLine(calcolatrice.Totale().ToString());

            calcolatrice.Operazione(divisione);
            calcolatrice.AddCifra(3);

            Console.WriteLine(calcolatrice.Totale().ToString());

            calcolatrice.AddCifra(5);
            calcolatrice.Operazione((op1, op2) => (Int32)Math.Pow(op1, op2));
            calcolatrice.AddCifra(3);

            Console.WriteLine(calcolatrice.Totale().ToString());

            calcolatrice.Operazione(
                delegate(Int32 op1, Int32 op2)
            {
                return(op1 >> op2);
            }
                ); // delegato anonimo
            calcolatrice.AddCifra(1);

            Console.WriteLine(calcolatrice.Totale().ToString());

            calcolatrice.Operazione(somma);
            calcolatrice.AddCifra(3);
            calcolatrice.AddCifra(5);
            calcolatrice.Back();

            Console.WriteLine(calcolatrice.Totale().ToString());

            Console.ReadLine();
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: agiglio71/IBL
        //static void DoQuattro()
        //{
        //    Calcolatrice calcolatrice = new Calcolatrice();

        //    calcolatrice.Uno();
        //    calcolatrice.Aggiungi();
        //    calcolatrice.Cinque();

        //    Console.WriteLine(calcolatrice.Totale().ToString());

        //    calcolatrice.Dividi();
        //    calcolatrice.Tre();

        //    Console.WriteLine(calcolatrice.Totale().ToString());

        //    calcolatrice.Cinque();
        //    calcolatrice.Moltiplica();
        //    calcolatrice.Tre();

        //    Console.WriteLine(calcolatrice.Totale().ToString());

        //    Console.ReadLine();
        //}

        //static void DoCinque()
        //{
        //    Calcolatrice calcolatrice = new Calcolatrice();
        //    Somma somma = new Somma();
        //    Differenza differenza = new Differenza();
        //    Prodotto prodotto = new Prodotto();
        //    Divisione divisione = new Divisione();

        //    calcolatrice.AddCifra(1);
        //    calcolatrice.Operazione(somma);
        //    calcolatrice.AddCifra(5);

        //    Console.WriteLine(calcolatrice.Totale().ToString());

        //    calcolatrice.Operazione(divisione);
        //    calcolatrice.AddCifra(3);

        //    Console.WriteLine(calcolatrice.Totale().ToString());

        //    calcolatrice.AddCifra(5);
        //    calcolatrice.Operazione(prodotto);
        //    calcolatrice.AddCifra(3);

        //    Console.WriteLine(calcolatrice.Totale().ToString());

        //    Console.ReadLine();
        //}

        static void DoSei()
        {
            Calcolatrice calcolatrice = new Calcolatrice();
            Somma        somma        = new Somma();
            Differenza   differenza   = new Differenza();
            Prodotto     prodotto     = new Prodotto();
            Divisione    divisione    = new Divisione();
            ShiftDestro  shiftDestro  = new ShiftDestro();

            calcolatrice.AddCifra(1);
            calcolatrice.Operazione(somma);
            calcolatrice.AddCifra(5);

            Console.WriteLine(calcolatrice.Totale().ToString());

            calcolatrice.Operazione(divisione);
            calcolatrice.AddCifra(3);

            Console.WriteLine(calcolatrice.Totale().ToString());

            calcolatrice.AddCifra(5);
            calcolatrice.Operazione(prodotto);
            calcolatrice.AddCifra(3);

            Console.WriteLine(calcolatrice.Totale().ToString());

            calcolatrice.Operazione(shiftDestro);
            calcolatrice.AddCifra(1);

            Console.WriteLine(calcolatrice.Totale().ToString());

            calcolatrice.Operazione(somma);
            calcolatrice.AddCifra(3);
            calcolatrice.AddCifra(5);
            calcolatrice.Back();

            Console.WriteLine(calcolatrice.Totale().ToString());

            Console.ReadLine();
        }