Example #1
0
        /**
         * Konštruktor triedy
         */
        public Math_handle(Output_handle ouput_handle)
        {
            this.output_handle = ouput_handle;
            matho = new Matho();

            actual_sign = sign.none;
        }
        public void MathLibraryAdd()
        {
            var sut = new Matho();

            Assert.AreEqual(sut.Add(3, 5), 8);
            Assert.AreEqual(sut.Add(-7, 1897), 1890);
            Assert.AreEqual(sut.Add(3.245, 5.245), 8.490);
            Assert.AreEqual(sut.Add(-56894, 56894), 0);
        }
        public void MathLibraryRoot()
        {
            var sut = new Matho();

            Assert.AreEqual(sut.Pow(2, 2), 4);
            Assert.AreEqual(sut.Pow(0, 2), 0);
            Assert.AreEqual(sut.Pow(1, 10), 1);
            Assert.AreEqual(sut.Pow(7, 9), 40353607);
        }
        public void MathLibraryDiv()
        {
            var sut = new Matho();

            Assert.AreEqual(sut.Div(15, 3), 5);
            Assert.AreEqual(sut.Div(1897, 8), 237, 125);
            Assert.AreEqual(sut.Div(8.245, 1.25), 6, 596);
            Assert.AreEqual(sut.Div(456789, 456789), 1);
        }
        public void MathLibraryMul()
        {
            var sut = new Matho();

            Assert.AreEqual(sut.Mul(3, 5), 15);
            Assert.AreEqual(sut.Mul(-7, 1897), -13279);
            Assert.AreEqual(sut.Mul(8.245, 5.240), 43, 2038);
            Assert.AreEqual(sut.Mul(456789, 456789), 208656190521);
        }
        public void MathLibrarySub()
        {
            var sut = new Matho();

            Assert.AreEqual(sut.Sub(3, 5), -2);
            Assert.AreEqual(sut.Sub(-7, 1897), -1904);
            Assert.AreEqual(sut.Sub(8.245, 5.240), 3, 005);
            Assert.AreEqual(sut.Sub(456789, 456789), 0);
        }
        public void MathLibraryMod()
        {
            var sut = new Matho();

            Assert.AreEqual(sut.Mod(7, 2), 1);
            Assert.AreEqual(sut.Mod(8, 2), 0);
            Assert.AreEqual(sut.Mod(45678, 12315), 8733);
            Assert.AreEqual(sut.Mod(6.99999, 7), 6, 99999);
        }
        public void MathLibrarySquareRoot()
        {
            var sut = new Matho();

            Assert.AreEqual(sut.SquareRoot(4), 2);
            Assert.AreEqual(sut.SquareRoot(5), 2, 23606797749979);
            Assert.AreEqual(sut.SquareRoot(0), 0);
            Assert.AreEqual(sut.SquareRoot(-5), -1);
            Assert.AreEqual(sut.SquareRoot(2.2), 1, 48323969741913);
        }
        public void MathLibraryFakt()
        {
            var sut = new Matho();

            Assert.AreEqual(sut.Fakt(5), 120);
            Assert.AreEqual(sut.Fakt(-5), -1);
            Assert.AreEqual(sut.Fakt(2.5), -1);
            Assert.AreEqual(sut.Fakt(11), 39916800);
            Assert.AreEqual(sut.Fakt(0), 1);
        }
        public void MathLibraryThirdRoot()
        {
            var sut = new Matho();

            Assert.AreEqual(sut.ThirdRoot(8), 2);
            Assert.AreEqual(sut.ThirdRoot(125), 5);
            Assert.AreEqual(sut.ThirdRoot(27), 3);
            Assert.AreEqual(sut.ThirdRoot(67), 4);
            Assert.AreEqual(sut.ThirdRoot(0), 0);
            Assert.AreEqual(sut.ThirdRoot(-5), -1);
        }
Example #11
0
        /**
         * Spriemerovanie pola cisiel
         *
         * @param a základ mocniny
         * @param numbers pole cisiel na spriemerovanie
         * @return double priemer
         */
        static double Average(double[] numbers)
        {
            var    sut     = new Matho();
            double Average = 0;

            for (int i = 0; i < numbers.Length; i++)
            {
                Average = sut.Add(numbers[i], Average);
            }
            return(sut.Div(Average, numbers.Length));
        }
Example #12
0
    public override void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
    {
        if (PlayerInfo.AnimationManager.KinematicBehaviour == this)
        {
            PlayerInfo.Body.isKinematic         = false;
            animator.updateMode                 = AnimatorUpdateMode.Normal;
            PlayerInfo.Animator.applyRootMotion = false;

            Vector2 forwardProjection = Matho.StandardProjection2D(PlayerInfo.Player.transform.forward).normalized;
            PlayerInfo.MovementManager.TargetDirection = forwardProjection;
            PlayerInfo.MovementManager.SnapDirection();
        }
    }
Example #13
0
        /**
         * Riadiaca funkcie profilingu
         *
         * @param numbers pole cisiel vstupnych
         * @return double výsledok profilingu
         */
        static double StandDev(double[] numbers)
        {
            var    sut      = new Matho();
            double StandDev = 0;
            int    N        = numbers.Length;
            double Avg      = Average(numbers);

            for (int i = 0; i < N; i++)
            {
                StandDev = sut.Add(sut.Pow(sut.Sub(numbers[i], Avg), 2), StandDev);
            }

            try
            {
                StandDev = sut.Div(StandDev, (sut.Sub(N, 1)));
            }
            catch (DivideByZeroException)
            {
                return(0);
            }

            return(sut.SquareRoot(StandDev));
        }