using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace Журнал
{
    public partial class Form1 : Form
    {
        string[] Students = new string[17];
        string[] NotUsedStudents = new string[17];
        int NotUsedStudentsLen = 17;

        string TextInBox = " \n";
        string FileName = "D:\\2023-24\\26гр\\Журнал\\БезРазницы.txt";

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            Students[0] = "Байдукова Ксения";
            Students[1] = "Джанибекян Эдуард";
            Students[2] = "Дунаев Никита";
            Students[3] = "Егоров Никита";
            Students[4] = "Елисеенко Олег";
            Students[5] = "Жданов Александр";
            Students[6] = "Ермоленко Артём";
            Students[7] = "Зеленский Павел";
            Students[8] = "Зелинский Кирилл";
            Students[9] = "Казютин Вадим";
            Students[10] = "Клещев Алексей";
            Students[11] = "Кулага Элис";
            Students[12] = "Поденный Дмитрий";
            Students[13] = "Подвербный Игорь";
            Students[14] = "Последов Кирилл";
            Students[15] = "Рябченко Иван";
            Students[16] = "Шишкова Анастасия";

            //добавление верхней строки
            for (int i = 0; i < 110; i++)
            {
                TextInBox = TextInBox + "-";
            }
            TextInBox = TextInBox + " \n";

            //ищем максимальную длину имени
            int MaxStudentsLen = 0;
            for (int i = 0; i < 17; i++)
            {
                if (MaxStudentsLen < Students[i].Length)
                {
                    MaxStudentsLen = Students[i].Length;
                }
            }

            int DeltaLength = 0;
            for (int i = 0; i < 17; i++)
            {
                DeltaLength = MaxStudentsLen - Students[i].Length;
                TextInBox = TextInBox + Students[i] + "\n";
            }

            richTextBox1.Text = TextInBox;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            //Выбор случайного студента
            Random rnd = new Random();
            int value = rnd.Next(0, NotUsedStudentsLen);
            NotUsedStudentsLen = NotUsedStudentsLen - 1;

            // Выбор случайной практической
            int randomPrack = rnd.Next(1, 7);

            // Вывод описания практической
            string descPrackt = "";
            if (randomPrack == 1) {
                descPrackt = "Математич.выражения. Злат. гл.2";
            }
            if (randomPrack == 2)
            {
                descPrackt = "Оператор ветвления. Злат. гл.4";
            }
            if (randomPrack == 3)
            {
                descPrackt = "Обработка строк. Злат. гл.12";
            }
            if (randomPrack == 4)
            {
                descPrackt = "Оператор цикла. Злат. гл.5";
            }
            if (randomPrack == 5)
            {
                descPrackt = "Массивы. Злат. гл.7, 8, 11";
            }
            if (randomPrack == 6)
            {
                descPrackt = "Обработка текстовых файлов. Злат. гл.16";
            }





            //Вывод выбранного студента
            label2.Text = $"{Students[value]}: {descPrackt}";

            //удаляем выбранного студента из списка
            //в NotUsedStudents заносим всех, кроме того, который выбран
            int counter = 0;
            for (int i=0; i<Students.Length; i++)
            {
                if (i != value)
                {
                    NotUsedStudents[counter] = Students[i];
                    counter = counter + 1;

                }
            }
            Students = NotUsedStudents;

        }

        private void label2_Click(object sender, EventArgs e)
        {

        }

        private void richTextBox2_TextChanged(object sender, EventArgs e)
        {

        }

        private void btnSave_Click(object sender, EventArgs e)
        {
            StreamWriter swSave = new StreamWriter(FileName);
            string[] Lines = richTextBox1.Text.Split('\n');
            for (int i = 0; i < Lines.Length; i++)
            {
                swSave.WriteLine(Lines[i]);
            }
            swSave.Close();
        }

        private void btnRead_Click(object sender, EventArgs e)
        {
            richTextBox1.Text = "";
            StreamReader srRead = new StreamReader(FileName);
            while (!srRead.EndOfStream)
            {
                richTextBox1.Text = richTextBox1.Text + srRead.ReadLine();
            }
            srRead.Close();
        }
    }
}
