Консольная программа тестирования - C#
Формулировка задачи:
Доброго дня суток.
Я уже который раз пытаюсь получить хоть какие-либо навыки по программированию, однако так и не добился никаких результатов. Все дело, в том, что ни разу не пробовал программировать, а все только сижу и читаю Гилберта.
И так ближе к делу.
Хочу написать программу, пока, что на консоли. Для моего младшего братишки, он учится в школе, а впереди 11 класс, а там тестирование. Хотелось бы помочь ему с этим.
Программа должна выглядеть следующим образом. Вбиваются вопросы и четыре варианта ответа, один из которых правильный. Выдаются всего лишь 25 вопросов, по каждой из 4 дисциплин. В конце каждого теста результаты, которые суммируются и выдаются в конце всего теста. То есть, сначала надо ответить на каждую из дисциплин, и в итоге получается ответ, типа 76 баллов из 100.
Для начала я написал вот, что:
Дальше меня не хватило, как создать метод, который можно было бы присваивать и он означал бы, что ответ правильный, например вот так:
class Question
{
public string Question {get;set;}
public Question (string q)
{
Question = q;
}
}
class Answer
{
public string answer1 {get;set;}
public string answer2 {get;set;}
public string answer3 {get;set;}
public string answer4 {get;set;}
public Answer (string a, string b, string c, string d)
{
answer1 = a;
answer2 = b;
answer3 = c;
answer4 = d;
}
}class TestDemo
{
static void Main
{
Question quest1 = new Question("В каком году родился, автор данной темы?")
Console.WriteLine("Выберите правильный вариант ответа: ");
Answer answr1 = new Answer("a.1989 год", "b.1988 год", "c.1986 год", "d.1990 год")
//а как быть дальше, как сделать так, что бы определить какой же из вариантов правильный?
}
}Решение задачи: «Консольная программа тестирования»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Questions
{
private string qustion; // вопрос
private string answer1; //ответ а)
private string answer2; //ответ б)
private string answer3; // ответ в)
private string answer4; // ответ г)
private string res; //правильный ответ
public string Res
{
get { return res; }
set { res = value; }
}
public Questions(string _question, string a, string b, string c, string d, string r)
{
this.qustion = _question;
this.answer1 = a;
this.answer2 = b;
this.answer3 = c;
this.answer4 = d;
this.res = r;
}
//--------------------------
public void print() // выводи в консоль вопрос и ответами
{
Console.WriteLine(this.qustion);
Console.WriteLine(this.answer1);
Console.WriteLine(this.answer2);
Console.WriteLine(this.answer3);
Console.WriteLine(this.answer4);
}
}
class Program
{
static void Main(string[] args)
{
int sum = 0;
string res;
Questions[] q = { new Questions("В каком году родился, автор данной темы?", "a.1989 год", "b.1988 год", "c.1986 год", "d.1990 год", "b"),
new Questions("Кто президент Украины?", "a.Янукович", "b.Тимошенко", "c.Кучма", "d.Мороз", "a"),
};
for (int i = 0; i < 2; i++) // здесь "2" означает что у тебя выведется только два первых вопроса(сколько у тебя будет вопросов, такую цифру и поставь)
{
q[i].print();
res = Console.ReadLine();
if (res != null)
{
if (res == q[i].Res)
{
sum++;
}
}
Console.WriteLine("Правильных ответов:{0}", sum);
Console.ReadLine();
}
}
}
}