Не правильно считываются данные

Я написал программу тест. Есть 4 radioButton'а, label, button 1. Вопросы из теста берутся из документа quest.txt. введите сюда описание изображения

Первым идет название теста(Теоретическая часть), дальше уже сам вопрос и 4 вариантов ответа. правильный ответ указан как число (1,2,3,4).

Форма теста введите сюда описание изображения

Сам код

namespace Diplomka
{
    public partial class Form5 : MaterialForm
    {
        int question_count;
        int correct_answers;
        int wrong_answer;
        string[] array; 
        int correct_answers_number; 
        int selected_response;
        StreamReader Read;
        public Form5()
        {
            InitializeComponent();
        }

        void Start()
        {

            try
            {
                Read = new StreamReader(Directory.GetCurrentDirectory() + @"\quest.txt", Encoding.UTF8);
                this.Text = Read.ReadLine();
                question_count = 0;
                correct_answers = 0;
                wrong_answer = 0;
                array = new string[30];
               

            }

            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

            вопрос();
        }

        void вопрос()
        {
            label1.Text = Read.ReadLine();
            radioButton0.Text = Read.ReadLine();
            radioButton1.Text = Read.ReadLine();
            radioButton2.Text = Read.ReadLine();
            radioButton3.Text = Read.ReadLine();

            correct_answers = int.Parse(Read.ReadLine());

            radioButton0.Checked = false;
            radioButton1.Checked = false;
            radioButton2.Checked = false;
            radioButton3.Checked = false;

            button1.Enabled = false;

            question_count = question_count + 1;

            if (Read.EndOfStream == true)
            {
                button1.Text = "Завершить";
            }
        }

        void состояниеПереключения(object sender, EventArgs e)
        {
            button1.Enabled = true;
            button1.Focus();
            RadioButton p = (RadioButton)sender;
            var t = p.Name;

            selected_response = int.Parse(t.Substring(11));
        }


        private void radioButton4_CheckedChanged(object sender, EventArgs e)
        {

        }

        private void buttonNext_Click_1(object sender, EventArgs e)
        {

        }

        private void label1_Click(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            

        }

        private void button2_Click(object sender, EventArgs e)
        {
          
        }

        private void Form5_Load(object sender, EventArgs e)
        {
            radioButton0.CheckedChanged += new EventHandler(состояниеПереключения);
            radioButton1.CheckedChanged += new EventHandler(состояниеПереключения);
            radioButton2.CheckedChanged += new EventHandler(состояниеПереключения);
            radioButton3.CheckedChanged += new EventHandler(состояниеПереключения);
            Start();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {

        }

        private void label1_Click_1(object sender, EventArgs e)
        {

        }

        private void выходToolStripMenuItem_Click(object sender, EventArgs e)
        {
           
        }

        private void начатьТестЗаногоToolStripMenuItem_Click(object sender, EventArgs e)
        {
            


        }

        private void materialButton1_Click(object sender, EventArgs e)
        {
            if (selected_response == correct_answers_number)
            {
                correct_answers = correct_answers + 1;
            }
            if (selected_response != correct_answers_number)
            {
                wrong_answer = wrong_answer + 1;

                array[wrong_answer] = label1.Text;
            }

            if(button1.Text == "asd")
            {
                radioButton0.Visible = true;
                radioButton1.Visible = true;
                radioButton2.Visible = true;
                radioButton3.Visible = true;
                Start();
                return;
            }
            if(button1.Text == "Завершить")
            {
                Read.Close();
                radioButton0.Visible = false;
                radioButton1.Visible = false;
                radioButton2.Visible = false;
                radioButton3.Visible = false;

                label1.Text = String.Format("Тестирование завершено.\n" + "Правильных ответов: {0} из {1}. \n" + "Набранные баллы: {2:F2}.",correct_answers, question_count, (correct_answers * 5.0F) / question_count);

                var Str = "Список ошибок " + ":\n\n";

                for (int i = 1; i <= wrong_answer; i++)
                {
                    Str = Str + array[i] + "\n";
                }
                if(wrong_answer != 0)
                {
                    MessageBox.Show(Str, "Тест завершен");
                }
                
            }
            if (button1.Text == "Следующий вопрос")
            {
                вопрос();
            }
        }

        private void radioButton0_CheckedChanged(object sender, EventArgs e)
        {

        }

        private void materialButton1_Click_1(object sender, EventArgs e)
        {
            
           
            
            
        }

        private void label1_Click_2(object sender, EventArgs e)
        {
            
        }
    }
}

Почему при завершении теста, список ошибок выводится правильно, а вот подсчет баллов и список правильно ответов выводится не верно. Не понимаю что не так в коде:

label1.Text = String.Format("Тестирование завершено.\n" + "Правильных ответов: {0} из {1}. \n" + "Набранные баллы: {2:F2}.",correct_answers, question_count, (correct_answers * 5.0F) / question_count);

введите сюда описание изображения


Ответы (0 шт):