Beispiel #1
0
 public void InitializedEventArgumentType()
 {
     Factorial.Factorial f = new Factorial.Factorial(3);
     f.Initialized += (fact) => {
         Assert.AreEqual(fact.GetType(), typeof(Factorial.Factorial));
     };
     f.Start();
 }
Beispiel #2
0
 public void InitializedEventSignature()
 {
     Factorial.Factorial f = new Factorial.Factorial(3);
     Assert.AreEqual(
         typeof(FactorialStateHandler).Name,
         f.GetType().GetEvent("Initialized").EventHandlerType.Name
         );
 }
Beispiel #3
0
 public void InitializedEventArgumentValues()
 {
     Factorial.Factorial f = new Factorial.Factorial(3);
     f.Initialized += (fact) => {
         Assert.AreEqual(fact.Number, 3);
         Assert.AreEqual(fact.Result, null);
     };
     f.Start();
 }
        static void Main(string[] args)
        {
            Console.WriteLine("Enter Nunmber:");
            int num = Convert.ToInt32(Console.ReadLine());

            Factorial obj = new Factorial();

            int ret = obj.Ops(num);

            Console.WriteLine("Factorial is:{0}", ret);
        }
Beispiel #5
0
        public static void Main(string[] args)
        {
            int iVar = 0, iAns;

            Console.WriteLine("Enter a number:");
            iVar = Convert.ToInt32(Console.ReadLine());

            Factorial fObj = new Factorial(iVar);

            iAns = fObj.iFactorial();
            Console.WriteLine("" + iVar + "! is  " + iAns);
        }
Beispiel #6
0
        static void Main()
        {
            Console.WriteLine("Enter something... ");
            int num = Convert.ToInt32(Console.ReadLine());

            int fac = Factorial.GetFactorial(num);

            Console.WriteLine(fac);
            Console.ReadKey(true);

            Factorial.Print_Numbers(1, 100);
        }
        static void Main(string[] args)
        {
            Factorial f = new Factorial();

            Console.WriteLine("Факториалы, рассчитанные рекурсивным методом.");
            Console.WriteLine("Факториал числа 3 равен " + f.FactR(3));
            Console.WriteLine("Факториал числа 4 равен " + f.FactR(4));
            Console.WriteLine("Факториал числа 5 равен " + f.FactR(5));
            Console.WriteLine();
            Console.WriteLine("Факториалы, рассчитанные итерационным методом.");
            Console.WriteLine("Факториал числа 3 равен " + f.FactR(3));
            Console.WriteLine("Факториал числа 4 равен " + f.FactR(4));
            Console.WriteLine("Факториал числа 5 равен " + f.FactR(5));
            Console.ReadKey();
        }
Beispiel #8
0
 public void Select(Factorial f)
 {
     if (f.Number < 0)
     {
         FactorialIsInvalid(f);
     }
     else if (f.Number == 0)
     {
         FactorialIsZero(f);
     }
     else if (f.Number > 0 && f.Number <= 2)
     {
         FactorialIsSimple(f);
     }
     else
     {
         FactorialNeedCalculating(f);
     }
 }
        static void Main(string[] args)
        {
            for (; ;)
            {
                int  f;
                bool ok;

                Console.WriteLine("Number for factorial: ");
                int x = int.Parse(Console.ReadLine());

                ok = Factorial.MethodFactorial(x, out f);

                if (ok)
                {
                    Console.WriteLine("Factorial (" + x + ") = " + f);
                }
                else
                {
                    Console.WriteLine("Cannot compute this factirial");
                }
            }
        }
Beispiel #10
0
        static void Main(string[] args)
        {
            Factorial f1 = new Factorial(5);
            Factorial f2 = new Factorial(3);

            Selector selector = new Selector();
            Invalid  invalid  = new Invalid();
            IsZero   isZero   = new IsZero();
            IsSimple isSimple = new IsSimple();

            FactorialCalculating factorialCalculating = new FactorialCalculating();
            CalculatingSelector  calculatingSelector  = new CalculatingSelector();
            Iterator             iterator             = new Iterator();

            IsReady isReady = new IsReady();

            f1.Initialized += selector.Select;
            f2.Initialized += selector.Select;

            selector.FactorialIsInvalid       += invalid.FactorialIsInvalid;
            selector.FactorialIsSimple        += isSimple.FactorialIsSimple;
            selector.FactorialIsZero          += isZero.FactorialIsZero;
            selector.FactorialNeedCalculating += factorialCalculating.FactorialCalculatingPrepare;

            factorialCalculating.IsReady += calculatingSelector.Select;

            calculatingSelector.NeedIteration += iterator.Iterate;
            iterator.IsReady += calculatingSelector.Select;

            calculatingSelector.IsReady += isReady.FactorialWrite;
            isZero.IsReady   += isReady.FactorialWrite;
            isSimple.IsReady += isReady.FactorialWrite;

            f1.Start();
            f2.Start();
        }
Beispiel #11
0
 public void FactorialWrite(Factorial f)
 {
     Console.WriteLine("Factorial({0}) = {1}", f.Number, f.Result);
 }
Beispiel #12
0
 public void FactorialIsSimple(Factorial f)
 {
     f.Result = f.Number;
     IsReady(f);
 }
Beispiel #13
0
 public void FactorialIsZero(Factorial f)
 {
     f.Result = 1;
     IsReady(f);
 }
Beispiel #14
0
 public void FactorialIsInvalid(Factorial f)
 {
     Console.WriteLine("Invalid value for factorial\n");
 }
Beispiel #15
0
        static void Main(string[] args)
        {
            Factorial f = new Factorial();

            Console.WriteLine("Factorial of 3 is " + f.FactR(3));
        }
Beispiel #16
0
 public void InitializedEventEmission()
 {
     Factorial.Factorial f = new Factorial.Factorial(3);
     f.Initialized += (fact) => { throw new EventRaisedExeption(); };
     Assert.ThrowsException <EventRaisedExeption>(() => { f.Start(); });
 }