我試圖創建一個評分測驗的方法。如果測驗問題只有一個正確的答案,它會正常工作,但我很難處理多個正確的答案。在列表中循環並匹配幾個條件
我先檢查一下當前問題有多少正確答案。如果它超過1我需要一個方法來檢查用戶的回答是否與正確答案完美匹配。
所以,如果有2個正確答案的問題,並且用戶只檢查其中1個,他就沒有得分。
關於檢查正確答案的答案數是否與正確答案匹配的方法的任何想法?
我認爲LINQ會很適合這裏,但我總是喜歡它。也許將所有正確的答案添加到新列表中並與.Contains匹配將是一個解決方案?
的類看起來像:
List<Question>
Question-Class
- List<Answers>
-(string) AnswerText
-(bool) CorrectAnswer
- List<string> UserAnswerToQuestionText
僞代碼:
if (currentquestion has more than one correct answer)
if (UserAnswerText == correctAnswerX && UserAnswerText == correctAnswerY)
nrofCorrectAnswers++;
謝謝您的回覆。這絕對是一步! :-) 儘管我的類看起來像這樣,所以用戶的答案是在一個字符串列表中,你仍然可以用linq迭代它們嗎? –
是的,你可以改變文本的ID。由於字符串更改,您需要進行一些格式設置和驗證。 –