コード例 #1
0
ファイル: SimplifierTest.cs プロジェクト: suigin500/xFunc
        public void SinArcsin()
        {
            var exp      = new Sin(new Arcsin(Variable.X));
            var expected = Variable.X;

            SimpleTest(exp, expected);
        }
コード例 #2
0
 public bool Visit(Sin sin)
 {
     sin.Parents.Clear();
     sin.Arg.Accept(this);
     UpdateInterval(sin, -1, 1);
     return(true);
 }
コード例 #3
0
        public void SinArcsin()
        {
            var exp      = new Sin(new Arcsin(new Variable("x")));
            var expected = new Variable("x");

            SimpleTest(exp, expected);
        }
コード例 #4
0
ファイル: SimplifierTest.cs プロジェクト: zhiyongpeng/xFunc
        public void SinZero()
        {
            var exp      = new Sin(zero);
            var expected = new Number(Math.Sin(0));

            SimpleTest(exp, expected);
        }
コード例 #5
0
        public void SinIntAndDoublesAsInputs()
        {
            var function = new Sin();

            var input1 = 20;
            var input2 = 100;
            var input3 = 1;
            var input4 = 1.0;
            var input5 = 1.5;
            var input6 = 1000;

            var result1 = function.Execute(FunctionsHelper.CreateArgs(input1), this.ParsingContext);
            var result2 = function.Execute(FunctionsHelper.CreateArgs(input2), this.ParsingContext);
            var result3 = function.Execute(FunctionsHelper.CreateArgs(input3), this.ParsingContext);
            var result4 = function.Execute(FunctionsHelper.CreateArgs(input4), this.ParsingContext);
            var result5 = function.Execute(FunctionsHelper.CreateArgs(input5), this.ParsingContext);
            var result6 = function.Execute(FunctionsHelper.CreateArgs(input6), this.ParsingContext);

            Assert.AreEqual(0.912945251, System.Math.Round(result1.ResultNumeric, 9));
            Assert.AreEqual(-0.506365641, System.Math.Round(result2.ResultNumeric, 9));
            Assert.AreEqual(0.841470985, System.Math.Round(result3.ResultNumeric, 9));
            Assert.AreEqual(0.841470985, System.Math.Round(result4.ResultNumeric, 9));
            Assert.AreEqual(0.997494987, System.Math.Round(result5.ResultNumeric, 9));
            Assert.AreEqual(0.826879541, System.Math.Round(result6.ResultNumeric, 9));
        }
コード例 #6
0
        public void SinTestInputsWithDatesThatHaveSlashesInThem()
        {
            var function = new Sin();

            var input1 = "1/17/2011 2:00 am";
            var input2 = "17/01/2011 2:00 AM";
            var input3 = "17/Jan/2011 2:00 AM";
            var input4 = "17/January/2011 2:00 am";
            var input5 = "1/17/2011 2:00:00 am";
            var input6 = "17/01/2011 2:00:00 AM";
            var input7 = "17/Jan/2011 2:00:00 AM";
            var input8 = "17/January/2011 2:00:00 am";

            var result1 = function.Execute(FunctionsHelper.CreateArgs(input1), this.ParsingContext);
            var result2 = function.Execute(FunctionsHelper.CreateArgs(input2), this.ParsingContext);
            var result3 = function.Execute(FunctionsHelper.CreateArgs(input3), this.ParsingContext);
            var result4 = function.Execute(FunctionsHelper.CreateArgs(input4), this.ParsingContext);
            var result5 = function.Execute(FunctionsHelper.CreateArgs(input5), this.ParsingContext);
            var result6 = function.Execute(FunctionsHelper.CreateArgs(input6), this.ParsingContext);
            var result7 = function.Execute(FunctionsHelper.CreateArgs(input7), this.ParsingContext);
            var result8 = function.Execute(FunctionsHelper.CreateArgs(input8), this.ParsingContext);

            Assert.AreEqual(0.851802841, System.Math.Round(result1.ResultNumeric, 9));
            Assert.AreEqual(eErrorType.Value, ((ExcelErrorValue)result2.Result).Type);
            Assert.AreEqual(0.851802841, System.Math.Round(result3.ResultNumeric, 9));
            Assert.AreEqual(0.851802841, System.Math.Round(result4.ResultNumeric, 9));
            Assert.AreEqual(0.851802841, System.Math.Round(result5.ResultNumeric, 9));
            Assert.AreEqual(eErrorType.Value, ((ExcelErrorValue)result6.Result).Type);
            Assert.AreEqual(0.851802841, System.Math.Round(result7.ResultNumeric, 9));
            Assert.AreEqual(0.851802841, System.Math.Round(result8.ResultNumeric, 9));
        }
コード例 #7
0
        public void SinHandlesNormal12HourClockInputs()
        {
            var function = new Sin();

            var input1 = "00:00:00 AM";
            var input2 = "00:01:32 AM";
            var input3 = "12:00 PM";
            var input4 = "12:00 AM";
            var input5 = "1:00 PM";
            var input6 = "1:10:32 am";
            var input7 = "3:42:32 pm";

            var result1 = function.Execute(FunctionsHelper.CreateArgs(input1), this.ParsingContext);
            var result2 = function.Execute(FunctionsHelper.CreateArgs(input2), this.ParsingContext);
            var result3 = function.Execute(FunctionsHelper.CreateArgs(input3), this.ParsingContext);
            var result4 = function.Execute(FunctionsHelper.CreateArgs(input4), this.ParsingContext);
            var result5 = function.Execute(FunctionsHelper.CreateArgs(input5), this.ParsingContext);
            var result6 = function.Execute(FunctionsHelper.CreateArgs(input6), this.ParsingContext);
            var result7 = function.Execute(FunctionsHelper.CreateArgs(input7), this.ParsingContext);

            Assert.AreEqual(0, System.Math.Round(result1.ResultNumeric, 8));
            Assert.AreEqual(0.001064815, System.Math.Round(result2.ResultNumeric, 9));
            Assert.AreEqual(0.479425539, System.Math.Round(result3.ResultNumeric, 9));
            Assert.AreEqual(0, System.Math.Round(result4.ResultNumeric, 8));
            Assert.AreEqual(0.515564791, System.Math.Round(result5.ResultNumeric, 9));
            Assert.AreEqual(0.048961898, System.Math.Round(result6.ResultNumeric, 9));
            Assert.AreEqual(0.608792026, System.Math.Round(result7.ResultNumeric, 9));
        }
コード例 #8
0
        public void SinTest(double first, double expected)
        {
            IOneCalculation calculator = new Sin();
            double          result     = calculator.Calculate(first);

            Assert.AreEqual(expected, result);
        }
コード例 #9
0
ファイル: SinTest.cs プロジェクト: Lalisa000/calcutor
        public void CalculationTest()
        {
            var    calculator = new Sin();
            double actual     = calculator.calculate(0);

            Assert.AreEqual(0, actual, 0.00);
        }
コード例 #10
0
ファイル: SinTests.cs プロジェクト: n-filatov/Calculator
        public void Calculate(double argument, double result)
        {
            var calculator = new Sin();
            var testResult = calculator.Calculate(argument);

            Assert.AreEqual(result, testResult);
        }
コード例 #11
0
ファイル: UnaryTest.cs プロジェクト: zhiyongpeng/xFunc
        public void EqualsTest2()
        {
            var sine = new Sin(new Number(2));
            var ln   = new Ln(new Number(2));

            Assert.NotEqual <IExpression>(sine, ln);
        }
コード例 #12
0
        public void SinCalculatorTests(double firstArgument, double result)
        {
            var calculator   = new Sin();
            var actualResult = calculator.Calculate(firstArgument);

            Assert.AreEqual(result, actualResult);
        }
コード例 #13
0
        public void IResultTest()
        {
            var exp    = new Sin(new Variable("x"));
            var result = new ExpressionResult(exp) as IResult;

            Assert.Equal(exp, result.Result);
        }
コード例 #14
0
ファイル: SineTest.cs プロジェクト: jeason0813/xFunc
        public void CloneTest()
        {
            var exp   = new Sin(new Number(1));
            var clone = exp.Clone();

            Assert.Equal(exp, clone);
        }
コード例 #15
0
 public static void TestHarness()
 {
     ObjectiveFunction.ObjectiveFunction c   = new Constant();
     ObjectiveFunction.ObjectiveFunction sin = new Sin();
     Console.WriteLine("Constant is {0}", integrate(0, 1, c, 100));
     Console.WriteLine("Sin is {0}", integrate(0, 1, sin, 100));
 }
コード例 #16
0
        public void ToStringTest()
        {
            var exp    = new Sin(new Variable("x"));
            var result = new ExpressionResult(exp);

            Assert.Equal("sin(x)", result.ToString());
        }
コード例 #17
0
ファイル: SinTest.cs プロジェクト: Rash26/Calculator
        public void TestSin(double firstArgument, double output)
        {
            var calculator = new Sin();
            var testResult = calculator.Calculate(firstArgument);

            Assert.AreEqual(output, testResult, 0.0000001);
        }
コード例 #18
0
        public void ResultTest()
        {
            var exp    = new Sin(Variable.X);
            var result = new ExpressionResult(exp);

            Assert.Equal(exp, result.Result);
        }
コード例 #19
0
        public ActionResult Index(string confession)
        {
            // store the confession as a sin
            var sin = new Sin()
            {
                Content = confession, Source = "JC"
            };

            MvcApplication.CurrentSession.Store(sin);

            Indulgence con = new Indulgence()
            {
                Confession    = confession.Truncate(150),
                DateConfessed = DateTime.Now,
                IsBlessed     = false,
                IsConfession  = true,
                SinId         = sin.Id,
                Tweeted       = false,
                Name          = "Anonymous"
            };

            MvcApplication.CurrentSession.Store(con);

            MvcApplication.CurrentSession.SaveChanges();

            return(RedirectToAction("Confess", new { id = con.Id.IdValue() }));
        }
コード例 #20
0
ファイル: SinTests.cs プロジェクト: mary-13/calc_omstu
        public void SimpleTest(double firstarg, double expected)
        {
            Sin    calc   = new Sin();
            double result = calc.Calc(firstarg);

            Assert.AreEqual(expected, result, 0.0000001);
        }
コード例 #21
0
ファイル: SinTests.cs プロジェクト: Azizjon96/calc
        public void SinTest(double first, double expected)
        {
            IoneCalculate calc   = new Sin();
            double        result = calc.Calculate(first);

            Assert.AreEqual(expected, result, 0.001);
        }
コード例 #22
0
        public ActionResult BeginConfession(string confession)
        {
            // store the confession as a sin
            Indulgence indulgence = null;
            var        sin        = new Sin()
            {
                Content = confession, Source = "JC", Guid = Guid.NewGuid()
            };

            indulgence = new Indulgence()
            {
                Confession          = confession.Truncate(150),
                DateConfessed       = DateTime.Now,
                IsBlessed           = false,
                IsConfession        = true,
                Sin                 = sin,
                Tweeted             = false,
                Name                = "Anonymous",
                Guid                = Guid.NewGuid(),
                BackgroundImageName = "parchment3"
            };
            _indulgeMeService.SaveIndulgence(indulgence);

            return(RedirectToAction("Confess", new { guid = indulgence.Guid }));
        }
コード例 #23
0
ファイル: UnaryTest.cs プロジェクト: zhiyongpeng/xFunc
        public void EqualsTest1()
        {
            var sine1 = new Sin(new Number(2));
            var sine2 = new Sin(new Number(2));

            Assert.Equal(sine1, sine2);
        }
コード例 #24
0
ファイル: SinTests.cs プロジェクト: shiro6479/SimpleCalc
        public void CalculateTest(double value, double expected)
        {
            var calculator   = new Sin();
            var actualResult = calculator.SingleCalculate(value);

            Assert.AreEqual(expected, actualResult, 0.00001);
        }
コード例 #25
0
ファイル: SinTests.cs プロジェクト: metel68/calculator420
        public void CalculateTest(double argument, double result, double accracy)
        {
            var testingFunction = new Sin();
            var testResult      = testingFunction.Calculate(argument);

            Assert.AreEqual(result, testResult, accracy);
        }
コード例 #26
0
        public void SimpleTest(double arg, double expected)
        {
            Sin    calc   = new Sin();
            double result = calc.Action(arg);

            Assert.AreEqual(expected, result, 0.1);
        }
コード例 #27
0
        public void CalculateTest(double argument, double result, double accuracy)
        {
            var calculator = new Sin();
            var testResult = calculator.Calculate(argument);

            Assert.AreEqual(testResult, result, accuracy);
        }
コード例 #28
0
        public void Calculate(double input, double output)
        {
            var calculator = new Sin();
            var testResult = calculator.Calculate(input);
            var result     = output;

            Assert.AreEqual(testResult, result, 0.1);
        }
コード例 #29
0
        public void Build_Sin_CorrectResultReturned()
        {
            var sinBuilder     = new SinBuilder();
            var res            = sinBuilder.Build("Sin");
            var expectedResult = new Sin();

            Assert.AreEqual(expectedResult, res);
        }
コード例 #30
0
ファイル: SinTest.cs プロジェクト: nixelt/CSharp-Tasks
        public void ValueAtThePoint_Sin_CorrectResultReturned()
        {
            Function     a = new Sin();
            const double x = 1;
            var          expectedResult = Math.Sin(x);

            Assert.AreEqual(expectedResult, a.ValueAtPoint(x));
        }
コード例 #31
0
ファイル: Expression.cs プロジェクト: FreddyFlares/Calculator
 void CreateOperators()
 {
     // Only one of each operation Token needs to be created
     opAdd = new Add(workStack);
     opSubtract = new Subtract(workStack);
     opMultiply = new Multiply(workStack);
     opDivide = new Divide(workStack);
     opPower = new Power(workStack);
     opBracket = new Bracket();
     opUnaryMinus = new UnaryMinus(workStack);
     opUnaryPlus = new UnaryPlus();
     opSqrt = new Sqrt(workStack);
     opSin = new Sin(workStack);
     opCos = new Cos(workStack);
     opTan = new Tan(workStack);
     opLog = new Log(workStack);
     opAsin = new Asin(workStack);
     opAcos = new Acos(workStack);
     opAtan = new Atan(workStack);
     functions = new Dictionary<string, Function>
     {
         {"sqr", opSqrt },
         {"sin", opSin },
         {"cos", opCos },
         {"tan", opTan },
         {"log", opLog },
         {"asin", opAsin },
         {"acos", opAcos },
         {"atan", opAtan }
     };
     binaryOperators = new Dictionary<char, BinaryOperator>
     {
         {'+', opAdd },
         {'-', opSubtract },
         {'*', opMultiply },
         {'/', opDivide },
         {'^',opPower }
     };
 }
コード例 #32
0
ファイル: Form1.cs プロジェクト: StanWulms/LP2526-6-2015
 //Het wijzigen van een SIN-missie.
 private void btnSinWijzigen_Click(object sender, EventArgs e)
 {
     try
     {
         s = new Sin();
         s.SinWijzigen(Convert.ToInt32(lbSINmissies.SelectedItem.ToString().Substring(3, lbSINmissies.SelectedItem.ToString().IndexOf("-") - 3)), tbSinBeschrijving.Text, Convert.ToInt32(tbSinX.Text), Convert.ToInt32(tbSinY.Text), dtpSinVertrektijd.Value.Date);
         System.Windows.Forms.MessageBox.Show("Sin nr *" + lbSINmissies.SelectedItem.ToString().Substring(3, lbSINmissies.SelectedItem.ToString().IndexOf("-") - 3) + "* is gewijzigd!");
     }
     catch
     {
         MessageBox.Show("Selecteer een Sin-missie uit de lijst en vul alle waardes in.");
     }
 }
コード例 #33
0
ファイル: Form1.cs プロジェクト: StanWulms/LP2526-6-2015
 //Het verwijderen  van een SIN-missie.
 private void btnSinVerwijderen_Click(object sender, EventArgs e)
 {
     try
     {
         s = new Sin();
         s.SinDelete(Convert.ToInt32(lbSINmissies.SelectedItem.ToString().Substring(3, lbSINmissies.SelectedItem.ToString().IndexOf("-") - 3)));
         System.Windows.Forms.MessageBox.Show("Meting nr *" + lbSINmissies.SelectedItem.ToString().Substring(3, lbSINmissies.SelectedItem.ToString().IndexOf("-") - 3) + "* is verwijderd!");
     }
     catch
     {
         MessageBox.Show("Selecteer een SIN-missie uit de lijst.");
     }
 }
コード例 #34
0
ファイル: Form1.cs プロジェクト: StanWulms/LP2526-6-2015
 //Toevoegen van een nieuwe SIN-missie.
 private void btnSinToevoegen_Click(object sender, EventArgs e)
 {
     try
     {
         s = new Sin();
         s.SinToevoegen(tbSinBeschrijving.Text, Convert.ToInt32(tbSinX.Text), Convert.ToInt32(tbSinY.Text), dtpSinVertrektijd.Value.Date);
         System.Windows.Forms.MessageBox.Show("Sin-missie is toegevoegd.");
     }
     catch
     {
         MessageBox.Show("Verkeerde invoer");
     }
 }
コード例 #35
0
ファイル: Form1.cs プロジェクト: StanWulms/LP2526-6-2015
        private void btnShow_Click(object sender, EventArgs e)
        {
            lbHOPEmissies.Items.Clear();
            lbSINmissies.Items.Clear();
            lbMetingen.Items.Clear();
            lbIncidenten.Items.Clear();

            //Toevoegen van HOPE-missies in de listbox.
            h = new Hope();
            h.GeefHopeMissies();
            foreach (Hope hope in h.hmissies)
            {
                lbHOPEmissies.Items.Add(hope.ToString());
            }

            //Toevoegen van Metingen in de listbox.
            met = new Meting();
            met.GeefMetingen();
            foreach (Meting meting in met.metingen)
            {
                lbMetingen.Items.Add(meting.ToString());
            }

            //Toevoegen van SIN-missies in de listbox.
            s = new Sin();
            s.GeefSinMissies();
            foreach (Sin sin in s.smissies)
            {
                lbSINmissies.Items.Add(sin.ToString());
            }

            //Toevoegen van Incidenten in de listbox.
            inc = new Incident();
            inc.GeefIncidenten();
            foreach (Incident incident in inc.Incidenten)
            {
                lbIncidenten.Items.Add(incident.ToString());
            }
        }