Example #1
0
        public override MissionBase Generate()
        {
            List <MatchElement> matchElements = new List <MatchElement>
            {
                new MatchElement("exe", new[] { "Программы" }),
                new MatchElement("doc", new[] { "Документы" }),
                new MatchElement("xls", new[] { "Таблицы" }),
                new MatchElement("txt", new[] { "Текстовые документы" }),
                new MatchElement("ppt", new[] { "Презентации" }),
                new MatchElement("html", new[] { "Страницы из Интернета" }),
                new MatchElement("jpg", new[] { "Рисунок, фотография" }),
                new MatchElement("mp3", new[] { "Музыка" }),
                new MatchElement("avi", new[] { "Видео" }),
                new MatchElement("rar", new[] { "Архив" })
            };

            List <MatchElement> matchElementsInResult = new List <MatchElement>();

            for (int i = 0; i < matchElements.Count;)
            {
                MatchElement elToAdd = matchElements[rnd.Next(0, matchElements.Count)];
                if (!matchElementsInResult.Contains(elToAdd))
                {
                    matchElementsInResult.Add(elToAdd);
                    i++;
                }
            }
            matchElementsInResult = matchElementsInResult.OrderBy(x => rnd.Next()).ToList(); //shuffle array
            string[] terms  = new string[6];
            string[] defs   = new string[6];
            int[]    answer = new int[6];
            for (int i = 0; i < terms.Length; i++)
            {
                MatchElement currentElement = matchElementsInResult[i];

                terms[i] = currentElement.Term;
                defs[i]  = currentElement.Definitions.ToList().OrderBy(x => rnd.Next()).ToArray()[0]; //random element
                int currAnswer = i;
                currAnswer++;
                answer[i] = currAnswer;
            }
            //shuffle defs and answer
            for (int i = 0; i < defs.Length; i++)
            {
                int index1 = rnd.Next(0, defs.Length), index2 = rnd.Next(0, defs.Length);

                (defs[index1], defs[index2])     = (defs[index2], defs[index1]);
                (answer[index1], answer[index2]) = (answer[index2], answer[index1]);
            }
            MissionBase generated = new MatchMission(NumOfMission, MissionName, terms, defs, answer);

            return(generated);
        }
Example #2
0
        public override MissionBase Generate()
        {
            List <MatchElement> matchElements = new List <MatchElement>();

            foreach (var item in DataCollection.GetAllElementsWhere(false, true))
            {
                matchElements.Add(new MatchElement(item.Term, item.Defenitions));
            }

            var generated = new MatchMission(NumOfMission, MissionName, matchElements.ToArray());

            return(generated);
        }
Example #3
0
        public override MissionBase Generate()
        {
            List <MatchElement> matchElements = new List <MatchElement>();

            matchElements.Add(new MatchElement("CPU", new[] { "Процессор" }));
            matchElements.Add(new MatchElement("RAM", new[] { "Оперативная память" }));
            matchElements.Add(new MatchElement("ROM", new[] { "Постоянная память" }));
            matchElements.Add(new MatchElement("HDD", new[] { "Жесткий диск" }));
            matchElements.Add(new MatchElement("SOUND CARD", new[] { "Звуковая карта" }));
            matchElements.Add(new MatchElement("VIDEO CARD", new[] { "Видеокарта" }));

            List <MatchElement> matchElementsInResult = new List <MatchElement>();

            for (int i = 0; i < matchElements.Count;)
            {
                var elToAdd = matchElements[rnd.Next(0, matchElements.Count)];
                if (!matchElementsInResult.Contains(elToAdd))
                {
                    matchElementsInResult.Add(elToAdd);
                    i++;
                }
            }
            matchElementsInResult = matchElementsInResult.OrderBy(x => rnd.Next()).ToList(); //shuffle array
            string[] terms  = new string[6];
            string[] defs   = new string[6];
            int[]    answer = new int[6];
            for (int i = 0; i < terms.Length; i++)
            {
                var currentElement = matchElementsInResult[i];

                terms[i] = currentElement.Term;
                defs[i]  = currentElement.Definitions.ToList().OrderBy(x => rnd.Next()).ToArray()[0]; //random element
                int currAnswer = i;
                currAnswer++;
                answer[i] = currAnswer;
            }
            //shuffle defs and answer
            for (int i = 0; i < defs.Length; i++)
            {
                int index1 = rnd.Next(0, defs.Length), index2 = rnd.Next(0, defs.Length);

                (defs[index1], defs[index2])     = (defs[index2], defs[index1]);
                (answer[index1], answer[index2]) = (answer[index2], answer[index1]);
            }
            var generated = new MatchMission(NumOfMission, MissionName, terms, defs, answer);

            return(generated);
        }
Example #4
0
        public override MissionBase Generate()
        {
            List <MatchElement> matchElements = new List <MatchElement>();

            matchElements.Add(new MatchElement("Оперативная память", new[] { "ddr2", "ddr3" }));
            matchElements.Add(new MatchElement("Архиватор", new[] { "zip", "7z" }));
            matchElements.Add(new MatchElement("Антивирусная программа", new[] { "DrWeb", "Antivirus Kasperski", "Avast" }));
            matchElements.Add(new MatchElement("Коммуникационная программа", new[] { "Skype", "Discord" }));
            matchElements.Add(new MatchElement("Интегрированная среда разработки", new[] { "Visual Studio", "IntelliJ IDEA", "PyCharm" }));
            matchElements.Add(new MatchElement("Текстовый редактор", new[] { "WordPad", " MS Word" }));
            matchElements.Add(new MatchElement("Графический редактор", new[] { "Paint", "Photoshop" }));
            matchElements.Add(new MatchElement("Электронные таблицы", new[] { "MS Excel" }));
            matchElements.Add(new MatchElement("Электронное учебное издание", new[] { "Wikipedia" }));

            var res = new MatchMission(NumOfMission, MissionName, matchElements.ToArray());

            return(res);
        }