Exemplo n.º 1
0
        public static TestProblem getTestProblem()
        {
            IList <Dimension> dimensions = new List <Dimension>();
            IDictionary <Dimension, Range> initialRanges = new Dictionary <Dimension, Range>();
            Func <IDictionary <Dimension, double>, double> targetFunction =
                new Func <IDictionary <Dimension, double>, double>(
                    (c) =>
            {
                return(29);
            }
                    );
            ProblemTarget target = ProblemTarget.Minimum;

            Range range = new Range(0, 1);

            dimensions.Add(new Dimension(range));
            initialRanges.Add(new KeyValuePair <Dimension, Range>(dimensions[0], range));

            TestProblem testProblem = new TestProblem(dimensions, initialRanges, targetFunction, target);

            return(testProblem);
        }
Exemplo n.º 2
0
        public ActionResult TestProblem(string subAction, string count, string dianpu)
        {
            var list50 = new List <TestProblem>();

            if (subAction == "开始考试")
            {
                ViewBag.TypeList = shopTypeRepositories.GetAll().ToList();
                var uname = this.Users().userName;
                list50            = testproblemRepository.GetList50(DateTime.Now, this.Users().ID);
                ViewBag.Uname     = uname;
                ViewBag.startTime = DateTime.Now;
                if (list50.Count != 0)
                {
                    ViewBag.message = "今天已经考过试!";
                    return(View());
                }
                DateTime   time = new DateTime();
                string[]   str  = dianpu.Split(',');
                int        ID   = 0;
                int        TH   = 1;
                Random     ran  = new Random();
                int        r    = 0;
                List <int> li   = new List <int>();
                while (examPagesRepository.GetproblemByShopTaoCount() > i)
                {
                    r = ran.Next(examPagesRepository.GetMinID(), examPagesRepository.GetMaxID());
                    if (!li.Contains(r))
                    {
                        if (examPagesRepository.GetExam(r) != null)
                        {
                            TestProblem testProblem = new TestProblem();
                            testProblem.startTime = DateTime.Now;
                            time = testProblem.startTime;
                            testProblem.endTime   = testProblem.startTime.AddMinutes(60);
                            testProblem.userid    = this.Users();
                            testProblem.problemid = examPagesRepository.GetByDatabaseID(r);
                            testProblem.tihao     = TH;
                            testproblemRepository.Save(testProblem);
                            i++;
                            TH++;
                            li.Add(r);
                        }
                    }
                }



                for (int j = 0; j < str.Length - 1; j++)
                {
                    ID = shopTypeRepositories.GetShopsByShopName(str[j]).ID;
                    foreach (var ite in examPagesRepository.GetproblemByShop(ID))
                    {
                        TestProblem testProblem = new TestProblem();
                        testProblem.startTime = DateTime.Now;
                        time = testProblem.startTime;
                        testProblem.endTime   = testProblem.startTime.AddMinutes(60);
                        testProblem.userid    = this.Users();
                        testProblem.problemid = ite;
                        testProblem.tihao     = TH;
                        testproblemRepository.Save(testProblem);
                        i++;
                        TH++;
                    }
                }
                ViewBag.coun    = i;
                ViewBag.message = "考试开始!";
                list50          = testproblemRepository.GetList50(time, this.Users().ID);
            }

            return(View(list50));
        }
Exemplo n.º 3
0
        public string Grade(int id, string answer, string othoranswer, int check, int ye, string ioi)
        {
            char[]      arr  = answer.ToCharArray();
            TestProblem test = new TestProblem();

            if (ye == 1)
            {
                test = testproblemRepository.AddthisanswerByproblem(this.Users().ID, int.Parse(ioi));
            }
            else
            {
                test = testproblemRepository.AddthisanswerByproblem(this.Users().ID, id);
            }
            if (check == 1)
            {
                test.thisanswer = string.Empty;
                for (int i = 0; i < answer.Length; i++)
                {
                    test.thisanswer = test.thisanswer + arr[i] + ",";
                }
            }
            else
            {
                test.thisanswer = answer;
            }
            testproblemRepository.Update(test);
            if (answer != testproblemRepository.GetAnswerByproblem(id).TrueAnswer)
            {
                var model = Wrongrepository.GetWrongByAnswer(id, DateTime.Now, this.Users().ID);
                if (model != null)
                {
                    Wrongrepository.Delete(model);
                }
                Wrong wrong = new Wrong();
                wrong.userid = this.Users();
                wrong.time   = DateTime.Now;
                wrong.wrong  = examPagesRepository.GetByDatabaseID(id);
                Wrongrepository.Save(wrong);
            }
            else
            {
                var model = Wrongrepository.GetWrongByAnswer(id, DateTime.Now, this.Users().ID);
                if (model != null)
                {
                    Wrongrepository.Delete(model);
                }
            }

            TestProblem te = new TestProblem();

            if (othoranswer != null)
            {
                if (ye == 1)
                {
                    te = testproblemRepository.GetthisanwserByproblem(this.Users().ID, id);
                }
                else
                {
                    te = testproblemRepository.GetthisanwserByproblem(this.Users().ID, int.Parse(othoranswer));
                }
            }
            return(te.thisanswer);
        }