Example #1
0
 public void TestAdding()
 {
     var question = new Question("question", new Range<int>(1, 1));
     var answer = new Answer("test", true);
     Assert.IsTrue(question.AddAnswer(answer));
     Assert.IsFalse(question.AddAnswer(answer));
 }
        static void Main(string[] args)
        {
            Game spiel = new Game();

            Question austria = new Question("Wie viele Bundesländer hat Österreich?");

            austria.AddAnswer(new Answer("8"));
            austria.AddAnswer(new Answer("9", true));
            austria.AddAnswer(new Answer("10"));
            spiel.AddQuestion(austria);

            Question gitarre = new Question("Wie viele Saiten hat eine Gitarre?");

            gitarre.AddAnswer(new Answer("6", true));
            gitarre.AddAnswer(new Answer("4"));
            gitarre.AddAnswer(new Answer("5"));
            spiel.AddQuestion(gitarre);

            Question pferd = new Question("Wie lange ist ein Pferd trächtig?");

            pferd.AddAnswer(new Answer("10 Monate"));
            pferd.AddAnswer(new Answer("9 Monate"));
            pferd.AddAnswer(new Answer("11 Monate", true));
            spiel.AddQuestion(pferd);

            while (spiel.Status == GameStatus.Active)
            {
                var frage     = spiel.NextQuestion;
                var antworten = frage.Answers;
            }
        }
Example #3
0
        static void Main(string[] args)
        {
            Game spiel   = new Game(true);
            int  counter = 0;

            Question frage1 = new Question("Wer hat die WM 2014 gewonnen?");

            frage1.AddAnswer(new Answer("Brasilien"));
            frage1.AddAnswer(new Answer("England"));
            frage1.AddAnswer(new Answer("Argentinien"));
            frage1.AddAnswer(new Answer("Deutschland", true));
            spiel.AddQuestion(frage1);


            Question frage2 = new Question("Wer hat ein Tor mit der Hand Gottes erzielt?");

            frage2.AddAnswer(new Answer("Maradona", true));
            frage2.AddAnswer(new Answer("Messi"));
            frage2.AddAnswer(new Answer("Neymar"));
            frage2.AddAnswer(new Answer("Crespo"));
            spiel.AddQuestion(frage2);


            Question frage3 = new Question("Wer wurde Torschützenkönig in der letzten Laliga Saison?");

            frage3.AddAnswer(new Answer("Gareth Bale"));
            frage3.AddAnswer(new Answer("Antoine Griezmann"));
            frage3.AddAnswer(new Answer("Lionel Messi", true));
            frage3.AddAnswer(new Answer("Karim Benzema"));
            spiel.AddQuestion(frage3);


            while (spiel.Status == GameStatus.Active)
            {
                var frage     = spiel.NextQuestion;
                var antworten = frage.Answers;
                Console.WriteLine(frage.Text);

                foreach (Answer a in antworten)
                {
                    Console.WriteLine(a.Text);
                    counter++;
                }

                Console.WriteLine("Was ist deine Antwort?");
                int eingabe = Convert.ToInt32(Console.ReadLine());
                antworten[eingabe].IsChecked = true;
                spiel.ValidateCurrentQuestion();
            }

            if (spiel.Status == GameStatus.HasFinished)
            {
                Console.WriteLine("Gewonnen!");
            }
            else
            {
                Console.WriteLine("Verloren!");
            }
        }
Example #4
0
 public void TestClearing()
 {
     var question = new Question("question");
     question.AddAnswer(new Answer("test", true));
     question.AddAnswer(new Answer("test2", false));
     Assert.AreEqual(question.Answers.Length, 2);
     question.ClearAnswers();
     Assert.AreEqual(question.Answers.Length, 0);
 }
Example #5
0
        static void Main(string[] args)

        {
            Game spiel = new Game();

            Question frage1 = new Question("Wie viele Bundesländer hat Deutschland?");

            frage1.AddAnswer(new Answer("18"));
            frage1.AddAnswer(new Answer("16", true));
            spiel.AddQuestion(frage1);

            Console.WriteLine(frage1.Text);

            Question frage2 = new Question("Wie viele Infizierte hat derzeit Deutschland?");

            frage2.AddAnswer(new Answer("35.000"));
            frage2.AddAnswer(new Answer("36.100"));
            frage2.AddAnswer(new Answer("35.700", true));
            spiel.AddQuestion(frage2);


            Console.WriteLine(frage2.Text);

            Question frage3 = new Question("Wie viele Schüler gehen in Österreich nicht in die Schule wegen der Corona-Krise?");

            frage3.AddAnswer(new Answer("1.450.000"));
            frage3.AddAnswer(new Answer("1.350.000"));
            frage3.AddAnswer(new Answer("1.380.000"));
            frage3.AddAnswer(new Answer("1.400.000", true));
            spiel.AddQuestion(frage3);

            Console.WriteLine(frage3.Text);

            while (spiel.Status == GameStatus.Active)
            {
                var frage     = spiel.NextQuestion;
                var antworten = frage.Answers;


                for (int i = 0; i < antworten.Count; i++)
                {
                    Console.WriteLine("Antworten: {0}", antworten[i]);
                }

                Console.WriteLine("Bitte geben Sie eine Zahl ein: {Answers}", antworten);
                antworten[0].IsChecked = true;

                spiel.ValidateCurrentQuestion();
            }

            Console.WriteLine(spiel.Status);
        }
Example #6
0
        public void CreateQuestion(Topic topic, string questionText, string trueA, string falseA1, string falseA2, string falseA3)
        {
            var question = new Question(questionText);

            topic.AddQuestion(question);
            var ta  = new Answer(trueA);
            var fa1 = new Answer(falseA1);
            var fa2 = new Answer(falseA2);
            var fa3 = new Answer(falseA3);

            question.AddAnswer(ta);
            question.AddAnswer(fa1);
            question.AddAnswer(fa2);
            question.AddAnswer(fa3);
        }
Example #7
0
 public void TestProperties()
 {
     var question = new Question("question", new Range<int>(1, 1));
     var answer = new Answer("test1", true);
     question.AddAnswer(answer);
     Assert.AreSame(question.Text, "question");
     Assert.AreEqual(question.MaxSelectedAnswersRange, new Range<int>(1, 1));
     Assert.AreEqual(question.Answers.Length, 1);
     question.SelectAnswer(answer);
     Assert.AreEqual(question.AnswersSelected, 1);
     Assert.AreEqual(question.SelectedAnswers[0], answer);
     Assert.IsTrue(question.AnsweredCorrectly);
     answer = new Answer("new answer", true);
     question.AddAnswer(answer);
     Assert.IsTrue(question.AnsweredCorrectly);
 }
Example #8
0
        public static List <Quiz> GetQuizByUserID(int subID)
        {
            QuizTableAdapter     quizData     = new QuizTableAdapter();
            QuestionTableAdapter questionData = new QuestionTableAdapter();
            AnswerTableAdapter   answerData   = new AnswerTableAdapter();
            List <Quiz>          quizzes      = new List <Quiz>();
            List <Question>      questions    = new List <Question>();
            List <Answer>        answers      = new List <Answer>();

            foreach (MultipleChoiceDataSet.QuizRow q in quizData.GetData())
            {
                if (q.By_user == subID)
                {
                    quizzes.Add(new Quiz(q.Title, q.Subject_id, q.By_user));
                    foreach (MultipleChoiceDataSet.QuestionRow question in questionData.GetDataByQuizID(q.Quiz_id))
                    {
                        if (question.Quiz_id == q.Quiz_id)
                        {
                            Question tempq = new Question(question.Question, question.By_user, question.Subject_id, DateTime.Now);
                            //questions.Add(new Question(question.Question, question.By_user, question.Subject_id, DateTime.Now));
                            foreach (MultipleChoiceDataSet.AnswerRow an in answerData.GetDataBy(question.Question_id))
                            {
                                //answers.Add(new Answer(an.Answer,an.Correct));
                                tempq.AddAnswer(new Answer(an.Answer, an.Correct));
                            }
                            quizzes[quizzes.Count - 1].AddQuestion(tempq, question.Subject_id);
                        }
                    }
                }
            }
            return(quizzes);
        }
Example #9
0
        public void CreateQuestionTest()
        {
            Question question = new Question();

            Assert.IsTrue(question.CreateDate > DateTime.MinValue && question.CreateDate < DateTime.MaxValue);
            //question = new Question("2-3 træer", "Hvad er 2-3 træer?");
            question.Header = "2-3 træer";
            question.Text   = "Hvad er 2-3 træer?";
            Assert.IsTrue(question.Header == "2-3 træer" && question.Text == "Hvad er 2-3 træer?");

            question.AddAnswer("Det er ikke relateret til programming men botani.");
            question.AddAnswer("Et sangomspundet træ der skulle gro i Babylons hængende haver");
            question.AddCorrectAnswer("En form graph der er forbundet der er et balanceret træ.");
            question.AddAnswer("En form graph der er ikke er forbundet men er et træ.");

            Assert.IsTrue(question.Answers.Count == 4);
            Assert.IsTrue(question.CorrectAnswer == question.Answers[2] && question.CorrectAnswer.Text == "En form graph der er forbundet der er et balanceret træ.");
        }
Example #10
0
        private void button1_Click(object sender, EventArgs e)
        {
            var q = new Question(qstTitle.Text, qstText.Text,
                                 valType.SelectedIndex == 0 ? Question.QValueEnum.Text : Question.QValueEnum.Image,
                                 ansType.SelectedIndex == 0 ? Question.QAnswerEnum.Radio : Question.QAnswerEnum.Check);

            for (var i = 1; i < 7; i++)
            {
                var val = groupBox3.Controls.Find($"ans{i}", true).OfType <RichTextBox>().FirstOrDefault()?.Rtf;
                var ira = groupBox3.Controls.Find($"en{i}", true).OfType <CheckBox>().FirstOrDefault()?.Checked ?? false;

                if (string.IsNullOrEmpty(val))
                {
                    continue;
                }

                if (q.ValueType == Question.QValueEnum.Text)
                {
                    q.AddAnswer(val);
                }
                else
                {
                    q.AddAnswer(Image.FromFile(val));
                }

                if (ira)
                {
                    q.RightAnswerId = q.RightAnswerId.Concat(new[] { (byte)i }).ToArray();
                }
            }


            qpQuestions.Items.Add(q);

            ans1.Text             = ans2.Text = ans3.Text = ans4.Text = ans5.Text = ans6.Text = "";
            en1.Checked           = en2.Checked = en3.Checked = en4.Checked = en5.Checked = en6.Checked = false;
            qstTitle.Text         = qstText.Text = "";
            valType.SelectedIndex = ansType.SelectedIndex = -1;

            groupBox2.Text       = $@"Список вопросов теста: {qpQuestions.Items.Count}";
            numericUpDown2.Value = numericUpDown1.Value * qpQuestions.Items.Count;
        }
Example #11
0
        public void SaveQuestionCtrTest()
        {
            QuestionCtr ctr      = new QuestionCtr();
            Question    question = new Question();

            //Question question = new Question("2-3 træer", "Hvad er 2-3 træer?");
            question.Header = "2-3 træer";
            question.Text   = "Hvad er 2-3 træer?";
            Assert.IsTrue(question.Header == "2-3 træer" && question.Text == "Hvad er 2-3 træer?");

            question.AddAnswer("Det er ikke relateret til programming men botani.");
            question.AddAnswer("Et sangomspundet træ der skulle gro i Babylons hængende haver");
            question.AddCorrectAnswer("En form graph der er forbundet der er et balanceret træ.");
            question.AddAnswer("En form graph der er ikke er forbundet men er et træ.");

            Assert.IsTrue(question.Answers.Count == 4);
            Assert.IsTrue(question.CorrectAnswer == question.Answers[2] && question.CorrectAnswer.Text == "En form graph der er forbundet der er et balanceret træ.");
            question.Answers[2].Id = 1337;
            ctr.SaveQuestion(question);
        }
Example #12
0
        private void CreateAnswers(Question currentQuestion)
        {
            int numberOfAnswers = _gameConfiguration.NumberOfAnswers;

            for (int i = 0; i < numberOfAnswers; i++)
            {
                Console.Clear();
                _menuView.AskForAnswer(i + 1);
                Answer newAnswer = Answer.Create(Console.ReadLine());
                currentQuestion.AddAnswer(newAnswer);
            }
        }
Example #13
0
        public void Test_GetAnswer_RetrievesAllAnswerWithQuestion()
        {
            Question testQuestion = new Question("sentence question", "gloomy");

            testQuestion.Save();

            Answer testAnswer = new Answer("sentence answer", "gloomy");

            testAnswer.Save();
            Answer testAnswer2 = new Answer("sentence2 answer2", "timid");

            testAnswer2.Save();

            testQuestion.AddAnswer(testAnswer);
            testQuestion.AddAnswer(testAnswer2);
            List <Answer> result   = testQuestion.GetAnswers();
            List <Answer> testList = new List <Answer> {
                testAnswer, testAnswer2
            };

            Assert.Equal(testList, result);
        }
        public QuizRepositoryMem()
        {
            Quiz quiz1 = this.CreateQuiz("Min Quiz");
            Quiz quiz2 = this.CreateQuiz("Endnu en quiz");
            Quiz quiz3 = this.CreateQuiz("Sidste quiz");

            Question q1 = quiz1.CreateQuestion("Hvad er meningen med livet?");

            q1.AddAnswer("40"); // 0
            q1.AddAnswer("41"); // 1
            q1.AddAnswer("42"); // 2
            q1.AddAnswer("43"); // 3
            q1.CorrectAnswerIndex = 2;

            Question q2 = quiz1.CreateQuestion("Hvor mange svarmuligheder har denne quiz?");

            q2.AddAnswer("1 muligheder"); // 0
            q2.AddAnswer("2 muligheder"); // 1
            q2.AddAnswer("3 muligheder"); // 2
            q2.AddAnswer("4 muligheder"); // 3
            q2.CorrectAnswerIndex = 3;
        }
Example #15
0
        public bool LoadQuiz(string path)
        {
            quiz.ResetQuestions();
            XmlDocument document = new XmlDocument();

            try
            {
                document.Load(path);
            }
            catch (Exception)
            {
                System.Windows.Forms.MessageBox.Show("Brak wybranego quizu");
                return(false);
            }

            XPathNavigator    navigator = document.CreateNavigator();
            XPathNodeIterator questions = navigator.Select("/Quiz/Question");
            XPathNavigator    QuizName  = navigator.SelectSingleNode("/Quiz/QuizName");

            quiz.QuizName = QuizName.Value;

            foreach (XPathNavigator q in questions)
            {
                XPathNavigator nav   = q.SelectSingleNode("QuestionContent");
                Question       quest = new Question(nav.Value);

                XPathNodeIterator answers = q.Select("Answer");

                foreach (XPathNavigator a in answers)
                {
                    XPathNavigator nav2 = a.SelectSingleNode("AnswerContent");
                    XPathNavigator nav3 = a.SelectSingleNode("IsRight");

                    bool isR;
                    if (nav3.Value == "True")
                    {
                        isR = true;
                    }
                    else
                    {
                        isR = false;
                    }
                    Answer an = new Answer(nav2.Value, isR);
                    quest.AddAnswer(an);
                }
                quiz.AddQuestion(quest);
            }
            return(true);
        }
Example #16
0
    public void SubmitEntry(EntryType entryType, string input, User user)
    {
        if (activeList == null)
        {
            Debug.LogError("No list selected!");
            return;
        }

        if (entryType == EntryType.Question)
        {
            activeList.AddQuestion(new Question(input, user));
        }

        if (entryType == EntryType.Answer)
        {
            activeQuestion.AddAnswer(new Answer(input));
        }

        activeList.Save();
    }
        public async Task <Result> Handle(UpdateQuestionWithAnswersCommand command, CancellationToken cancellationToken)
        {
            Question question = uow.Questions.GetByIdWithAnswers(command.QuestionId);

            if (question == null)
            {
                return(Result.NotFound());
            }
            if (question.OwnerId != command.UserId) // todo : check catalog instead
            {
                return(Result.Unauthorized());
            }
            if (command.ConcurrencyToken.HasValue)
            {
                if (question.ConcurrencyToken != command.ConcurrencyToken.Value)
                {
                    return(Result.Conflict());
                }
            }

            question.Content = command.Content;

            if (question.CatalogId != command.CatalogId)
            {
                var owner  = uow.Owners.GetById(question.OwnerId);
                var policy = AddQuestionPolicyFactory.Create(owner.MembershipLevel);
                QuestionMover.MoveQuestionToCatalog(question, command.CatalogId, uow.QuestionsCatalogs, policy);
            }

            question.Answers.MergeWith(command.Answers, x => x.AnswerId, y => y.AnswerId,
                                       onAdd: x => question.AddAnswer(x.Content, x.IsCorrect),
                                       onUpdate: (x, y) => { x.Content = y.Content; x.IsCorrect = y.IsCorrect; },
                                       onDelete: y => question.DeleteAnswer(y));

            await uow.Save();

            return(Result.Ok());
        }
Example #18
0
        public void TestQuestionUpdate()
        {
            QuestionAnswer        qaTest       = new QuestionAnswer("Praha", true);
            QuestionAnswer        qaTest2      = new QuestionAnswer("Ostrava", false);
            List <QuestionAnswer> questionList = new List <QuestionAnswer>()
            {
                qaTest, qaTest2
            };

            Question generatedQuestion = QuestionTable.InsertQuestion(this.connection, 1, "Jaké je hlavní město ČR?", "closed", questionList);

            generatedQuestion.AddAnswer(new QuestionAnswer("Brno", false));
            generatedQuestion.Text = "Test";

            Assert.IsTrue(QuestionTable.UpdateQuestion(this.connection, generatedQuestion));

            Question updatedQuestion = QuestionTable.GetQuestionById(this.connection, generatedQuestion.Id);

            Assert.AreEqual("Test", updatedQuestion.Text);
            Assert.AreEqual(3, updatedQuestion.Answers.Count);
            Assert.AreEqual("Brno", updatedQuestion.Answers[2].Text);

            Assert.IsTrue(QuestionTable.DeleteQuestion(this.connection, generatedQuestion));
        }
Example #19
0
 public void TestAddingWhenNull()
 {
     var question = new Question("question", new Range<int>(1, 1));
     question.AddAnswer(null);
 }
Example #20
0
        static void Main(string[] args)
        {
            Game spiel = new Game();

            Question frage1 = new Question("Wann starb Otto von Bismarck?");
            Answer   a      = new Answer("1898", true);
            Answer   b      = new Answer("1897");
            Answer   c      = new Answer("1945");

            frage1.AddAnswer(a);
            frage1.AddAnswer(b);
            frage1.AddAnswer(c);
            spiel.AddQuestion(frage1);

            Question frage2 = new Question("Welches Tier ist schneller?");
            Answer   aa     = new Answer("Ente");
            Answer   bb     = new Answer("Lachs");
            Answer   cc     = new Answer("Leopard", true);

            frage2.AddAnswer(aa);
            frage2.AddAnswer(bb);
            frage2.AddAnswer(cc);
            spiel.AddQuestion(frage2);

            Question frage3 = new Question("Wo spielt Paulo Dybala?");
            Answer   aaa    = new Answer("Real Madrid");
            Answer   bbb    = new Answer("FC Bayern");
            Answer   ccc    = new Answer("Juventus Turin", true);

            frage3.AddAnswer(aaa);
            frage3.AddAnswer(bbb);
            frage3.AddAnswer(ccc);
            spiel.AddQuestion(frage3);

            var status     = Convert.ToInt32(spiel.Status);
            var gamestatus = Convert.ToInt32(GameStatus.Active);



            while (spiel.Status == GameStatus.Active)
            {
                var frage = spiel.NextQuestion;

                var antworten = frage.Answers;

                Console.WriteLine();
                Console.WriteLine(frage.Text);


                foreach (var antwort in antworten)
                {
                    Console.WriteLine(antwort.Text);
                }


                Console.Write("Was ist die Antwort: ");
                int eingabee = Convert.ToInt32(Console.ReadLine());

                antworten[eingabee].IsChecked = true;

                spiel.ValidateCurrentQuestion();
            }

            if (spiel.Status == GameStatus.HasFinished)
            {
                Console.WriteLine("Gewonnen");
            }

            else if (spiel.Status == GameStatus.HasLost)
            {
                Console.WriteLine("Verloren");
            }

            else
            {
                Console.WriteLine("Spiel abgebrochen");
            }
        }
Example #21
0
        public string GetQuestions()
        {
            try
            {
                var dataSet = new DataSet();
                var answers = new DataSet();

                command.CommandText = "SELECT * from sys.question ";
                command.Parameters.Add("@QR", MySqlDbType.Int32);
                connection.Open();

                var dataAdapter = new MySqlDataAdapter {
                    SelectCommand = command
                };

                dataAdapter.Fill(dataSet);



                foreach (DataTable table in dataSet.Tables)
                {
                    foreach (DataRow row in table.Rows)
                    {
                        Question question = new Question();
                        question.question = row["Question"].ToString();
                        question.type     = row["Type"].ToString();
                        question.refrence = row["Ref"].ToString();


                        var QuestionRef = question.refrence;
                        command.CommandText = "SELECT sys.answer.Answer, sys.answer.Score FROM sys.answer Where sys.answer.QuestionRef =  @QR ";

                        command.Parameters["@QR"].Value = QuestionRef;


                        dataAdapter = new MySqlDataAdapter {
                            SelectCommand = command
                        };
                        answers.Clear();
                        dataAdapter.Fill(answers);

                        foreach (DataTable ATable in answers.Tables)
                        {
                            foreach (DataRow ARow in ATable.Rows)
                            {
                                Answer ans = new Answer();
                                ans.answer = ARow["Answer"].ToString();
                                ans.Score  = ARow["Score"].ToString();


                                question.AddAnswer(ans);
                            }
                        }
                        questions.AddQuestions(question);
                    }
                }
                string JSON = JsonConvert.SerializeObject(questions);
                return(JSON);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message, ex);
            }
            finally
            {
                if (null != connection)
                {
                    connection.Close();
                }
            }
        }
 public void AddAnswer(Question question, Answer answer)
 {
     Badges.Add(Badge.Teacher);
     question.AddAnswer(answer);
 }
Example #23
0
        static void Main(string[] args)
        {
            Game spiel = new Game();

            //Frage 1
            Question frage1 = new Question("Womit werden Eisenbahnwaggons professionell abgebremst ?");

            frage1.AddAnswer(new Answer("0: Riemchensandale"));
            frage1.AddAnswer(new Answer("1: Lederstiefel"));
            frage1.AddAnswer(new Answer("2: Badeschlapfen"));
            frage1.AddAnswer(new Answer("3: Hemmschuh", true));
            spiel.AddQuestion(frage1);

            //Frage 2
            Question frage2 = new Question("Welche britische Band gilt als Inbegriff des Synthiepop?");

            frage2.AddAnswer(new Answer("0: Bon Jovi"));
            frage2.AddAnswer(new Answer("1: U2"));
            frage2.AddAnswer(new Answer("2: Depeche Mode", true));
            frage2.AddAnswer(new Answer("3: Metallica"));
            spiel.AddQuestion(frage2);

            //Frage 3
            Question frage3 = new Question("Wem wurde in jener Stadt der Nobelpreis überreicht, die damals noch Kristiania hieß?");

            frage3.AddAnswer(new Answer("0: Max Planck"));
            frage3.AddAnswer(new Answer("1: Albert Schweitzer"));
            frage3.AddAnswer(new Answer("2: Bertha von Suttner", true));
            frage3.AddAnswer(new Answer("3: Marie Curie"));
            spiel.AddQuestion(frage3);

            while (spiel.Status == GameStatus.Active)
            {
                var question = spiel.NextQuestion;
                var answers  = question.Answers;

                Console.WriteLine(question.Text);

                foreach (var answer in answers)
                {
                    Console.WriteLine(answer.Text);
                }


                Console.Write("Antwort: ");
                int eingabe = Convert.ToInt32(Console.ReadLine());

                answers[eingabe].IsChecked = true;

                spiel.ValidateCurrentQuestion();
            }

            if (spiel.Status == GameStatus.HasFinished)
            {
                Console.WriteLine("Herzlichen Glückwunsch, du hast gewonnen!");
            }

            else if (spiel.Status == GameStatus.HasLost)
            {
                Console.WriteLine("Das war leider falsch!");
            }
        }
        /// <summary>
        /// Parse the answers for a particular question
        /// </summary>
        /// <param name="strAnswers"></param>
        /// <param name="question"></param>
        private void ParseAnswers(string[] strAnswers, Question question)
        {
            switch (question.Type)
            {
            case QuestionType.QT_ESSAY:
            {
                if (strAnswers.Length != 0)
                {
                    question.Type         = QuestionType.QT_UNKNOWN;
                    question.ErrorMessage = "Essay questions must be written on one line, and can not have any answers";
                }
                break;
            }

            case QuestionType.QT_FILL_IN_THE_BLANK:
            {
                if (strAnswers.Length == 0)
                {
                    question.Type         = QuestionType.QT_UNKNOWN;
                    question.ErrorMessage = "Fill in the blank questions must have at least one answer";
                }
                else
                {
                    foreach (string strAnswer in strAnswers)
                    {
                        Answer answer = new Answer();
                        answer.Text      = strAnswer;
                        answer.IsCorrect = true;

                        question.AddAnswer(answer);
                    }
                }

                break;
            }

            case QuestionType.QT_MULTIPLE_ANSWER:
            {
                if (strAnswers.Length == 0)
                {
                    question.Type         = QuestionType.QT_UNKNOWN;
                    question.ErrorMessage = "Multiple answer questions must have at least one answer";
                }
                else
                {
                    int nCorrectAnswers = 0;

                    foreach (string strAnswer in strAnswers)
                    {
                        Answer answer = new Answer();

                        if (strAnswer[0] == '*')
                        {
                            answer.IsCorrect = true;
                            answer.Text      = strAnswer.Substring(1);

                            nCorrectAnswers++;
                        }
                        else
                        {
                            answer.Text = strAnswer;
                        }

                        question.AddAnswer(answer);
                    }

                    if (nCorrectAnswers < 1)
                    {
                        question.Type         = QuestionType.QT_UNKNOWN;
                        question.ErrorMessage = "No correct answers found";
                    }
                }

                break;
            }

            case QuestionType.QT_MULTIPLE_CHOICE:
            {
                if (strAnswers.Length == 0)
                {
                    question.Type         = QuestionType.QT_UNKNOWN;
                    question.ErrorMessage = "Multiple Choice questions must have at least one answer";
                }
                else
                {
                    int nCorrectAnswers = 0;

                    foreach (string strAnswer in strAnswers)
                    {
                        Answer answer = new Answer();

                        if (strAnswer[0] == '*')
                        {
                            answer.IsCorrect = true;
                            answer.Text      = strAnswer.Substring(1);

                            nCorrectAnswers++;
                        }
                        else
                        {
                            answer.Text = strAnswer;
                        }

                        question.AddAnswer(answer);
                    }

                    if (nCorrectAnswers < 1)
                    {
                        question.Type         = QuestionType.QT_UNKNOWN;
                        question.ErrorMessage = "No correct answers found";
                    }
                    else if (nCorrectAnswers > 1)
                    {
                        question.Type         = QuestionType.QT_UNKNOWN;
                        question.ErrorMessage = "Multiple Choice questions can only have 1 correct answer";
                    }
                }

                break;
            }

            case QuestionType.QT_TRUE_OR_FALSE:
            {
                question.Type         = QuestionType.QT_UNKNOWN;
                question.ErrorMessage = "True or false questions must have 1 answer (T or F)";

                if (strAnswers.Length == 1)
                {
                    //Only grab the first character (t/f)
                    string strAnswer = strAnswers[0].ToLower()[0].ToString();

                    if (strAnswer == "t" || strAnswer == "f")
                    {
                        Answer answerTrue = new Answer();
                        answerTrue.Text      = "true";
                        answerTrue.IsCorrect = (strAnswer == "t");

                        Answer answerFalse = new Answer();
                        answerFalse.Text      = "false";
                        answerFalse.IsCorrect = (strAnswer == "f");

                        question.AddAnswer(answerTrue);
                        question.AddAnswer(answerFalse);
                        question.Type = QuestionType.QT_TRUE_OR_FALSE;
                    }
                    else
                    {
                        question.ErrorMessage = "True and False are the only valid answers for this question type.";
                    }
                }

                break;
            }
            }
        }
Example #25
0
 public void CmdAddAnswer(Question.Answer answer)
 {
     questionManager.AddAnswer(answer);
 }
        static void Main(string[] args)
        {

            Game quiz = new Game();

            Question f1 = new Question("Welcher Verein gewann in der Saison 40/41 die deutsche Bundesliga?");
            Answer a1 = new Answer("Bayern München");
            Answer b1 = new Answer("Eintracht Braunschweig");
            Answer c1 = new Answer("Rapid Wien", true);
            f1.AddAnswer(a1);
            f1.AddAnswer(b1);
            f1.AddAnswer(c1);
            quiz.AddQuestion(f1);

            Question f2 = new Question("Welcher Verein stand in der Euopaleague im Finale gegen Sevilla?");
            Answer a2 = new Answer("Middelsbrough");
            Answer b2 = new Answer("SV Casino Salzburg");
            Answer c2 = new Answer("Dnipro Dnipropetrovsk", true);
            f2.AddAnswer(a2);
            f2.AddAnswer(b2);
            f2.AddAnswer(c2);
            quiz.AddQuestion(f2);

            Question f3 = new Question("In welcher Saison stieg der jetzige Europaleague 8tel-Finalist 'Linzer ASK' in die Österreichische Erstklassigkeit auf?");
            Answer a3 = new Answer("12/13");
            Answer b3 = new Answer("01/02");
            Answer c3 = new Answer("16/17", true);
            f3.AddAnswer(a3);
            f3.AddAnswer(b3);
            f3.AddAnswer(c3);
            quiz.AddQuestion(f3);

            Question f4 = new Question("Der Verein 'VOC Rotterdam' wurde der erste Meister der Eredivise (Hollänidsche Erste Liga). In welcher Liga spielt der Verein jetzt?");
            Answer a4 = new Answer("2 Liga");
            Answer b4 = new Answer("Regionalliga");
            Answer c4 = new Answer("5 Liga", true);
            f4.AddAnswer(a4);
            f4.AddAnswer(b4);
            f4.AddAnswer(c4);
            quiz.AddQuestion(f4);


            while(quiz.Status == GameStatus.Active)
            {
                var fragen = quiz.NextQuestion;
                var antworten = fragen.Answers;
                Console.WriteLine(fragen.Text);
                int counter = 0;

                foreach(Answer f in antworten)
                {
                    Console.WriteLine("(" + counter + ")"+ antworten.Text;
                    counter++;
                }
                Console.WriteLine("Bitte geben Sie die Richtige Antwort ein: ");
                int index = Convert.ToInt32(Console.ReadLine());
                antworten[index].IsChecked = true;
                quiz.ValidateCurrentQuestion();
            }

            if(spiel.Status == GameStatus.HasFinished)
            {
                Console.WriteLine("Sie haben Gewonnen und alle Level gemeistert");
            }
            else
            {
                Console.WriteLine("Sie haben verloren, Sie haben dieses Level:"+ spiel.Level);
            }



        }
Example #27
0
        static void Main(string[] args)
        {
            Game game = new Game();

            Question frage1 = new Question("Zahlungsunfähigkeit nennt man auch?");

            frage1.AddAnswer(new Answer("Spiel beenden"));
            frage1.AddAnswer(new Answer("Insolvenz", true));
            frage1.AddAnswer(new Answer("Karenz"));
            frage1.AddAnswer(new Answer("Insolation"));
            frage1.AddAnswer(new Answer("Instanz"));
            game.AddQuestion(frage1);

            Question frage2 = new Question("Wie heißt die japanische Währung?");

            frage2.AddAnswer(new Answer("Spiel beenden"));
            frage2.AddAnswer(new Answer("Rand"));
            frage2.AddAnswer(new Answer("Yen", true));
            frage2.AddAnswer(new Answer("Dollar"));
            frage2.AddAnswer(new Answer("Rupie"));
            game.AddQuestion(frage2);

            Question frage3 = new Question("Das staatlich festgelegte Preismaximum ist zum Schutze der...?");

            frage3.AddAnswer(new Answer("Spiel beenden"));
            frage3.AddAnswer(new Answer("Arbeitslosen"));
            frage3.AddAnswer(new Answer("Produzenten"));
            frage3.AddAnswer(new Answer("Verbraucher", true));
            frage3.AddAnswer(new Answer("Oligopolisten"));
            game.AddQuestion(frage3);

            while (game.Status == GameStatus.Active)
            {
                var frage     = game.NextQuestion;
                var antworten = frage.Answers;

                int counter = 0;
                //Frage
                Console.WriteLine("\n {0}", frage.Text);
                //Antworten
                foreach (var item in antworten)
                {
                    Console.WriteLine("{0}) {1}", counter, item.Text);
                    counter++;
                }
                //Eingabe
                Console.Write("\n Eingabe: ");
                int eingabe = Convert.ToInt32(Console.ReadLine());

                if (eingabe == 0)
                {
                    game.ValidateCurrentQuestion();
                }
                else
                {
                    antworten[eingabe].IsChecked = true;
                }

                game.ValidateCurrentQuestion();
            }
            //Gewonnen, Verloren
            if (game.Status == GameStatus.HasFinished)
            {
                Console.WriteLine("TO EASY FOR YOU!! CONGRATS, YOU WON!");
            }
            else
            {
                Console.WriteLine("YOU HAVE TO STUDY HARDER! YOU LOST THE GAME!");
            }
        }
        static void Main(string[] args)
        {
            Game spiel = new Game();

            #region Fragen


            Question frage1 = new Question("Wie viel ist 2 + 2?");
            frage1.AddAnswer(new Answer("5"));
            frage1.AddAnswer(new Answer("4", true));
            spiel.AddQuestion(frage1);

            Question frage2 = new Question("Wie viel ist 3 + 3 + 3 x 3?");
            frage2.AddAnswer(new Answer("15", true));
            frage2.AddAnswer(new Answer("27"));
            frage2.AddAnswer(new Answer("30"));
            frage2.AddAnswer(new Answer("14"));
            spiel.AddQuestion(frage2);

            Question frage3 = new Question("Wie viel ist (3 + 3 + 3 ) x 3?");
            frage3.AddAnswer(new Answer("15"));
            frage3.AddAnswer(new Answer("27", true));
            frage3.AddAnswer(new Answer("33"));
            frage3.AddAnswer(new Answer("333"));
            spiel.AddQuestion(frage3);
            #endregion



            while (spiel.Status == GameStatus.Active)
            {
                var frage     = spiel.NextQuestion;
                var antworten = frage.Answers;

                Console.WriteLine(frage.Text);
                int counter = 0;
                foreach (var antwort in antworten)
                {
                    Console.WriteLine("(" + counter + ")" + " " + antwort.Text);
                    counter++;
                }

                Console.Write("Geben sie die nummer der richtigen Lösung ein: ");
                int eingabe = Convert.ToInt32(Console.ReadLine());

                antworten[eingabe].IsChecked = true;

                spiel.ValidateCurrentQuestion();
            }

            if (spiel.Status == GameStatus.HasFinished)
            {
                Console.WriteLine("Du hast alles richtig super! ");
            }

            if (spiel.Status == GameStatus.HasLost)
            {
                Console.WriteLine("Du hast verloren! ");
            }

            if (spiel.Status == GameStatus.Quit)
            {
                Console.WriteLine("Du hast vorzeitig das Spiel verlassen! ");
            }
        }