База данных в консоли (не SQL, не WinForms) - C#

Узнай цену своей работы

Формулировка задачи:

Написать программу для работы с БД "Студенты": Структура БД: - № (номер записи) - ФИО - Дата рождения (дд.мм.гг) - Факультет - Группа - Курс - Средний балл Работа БД: ~ добавление, изменение, удаление записи (элемента) БД ~ сортировка по полям: ФИО, Дата рождения ~ поиск элемента по полям: ФИО, Дата рождения ~ нахождение Max, Min, среднего значения и суммы по полю: Средний балл. Ввод/вывод данных в файл, ввод/вывод информации и т.д. - меню. Данные БД хранятся в файле.
, выручайте огромного нуба! Не знаю с чего начать эту работу. Пока есть только имена переменных -_- Хотелось начать делать с помощью многомерных массивов, т.к. мне немного известно про метод <List>, но говорят, он намного проще, ведь коллекцию можно перевести в массив....

Что-то отдаленно напоминающее идею без практической реализации:

7 столбцов постоянно ( № | ФИО | Дата рождения | Институт | Группа | Курс | Средний балл ) неизвестное кол-во студентов (строк) цикл на ввод строки строка - элемент "массива" (или коллекции??) И еще оформление... но это пока не самое главное. У кого есть опыт такого создания БД в КОНСОЛИ
(е-мае! эксперименты для университетского предмета)
, отпишитесь, любые идеи приветствуются!

Решение задачи: «База данных в консоли (не SQL, не WinForms)»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.Data;
  7. using System.IO;
  8.  
  9. namespace Лабораторная2
  10. {
  11.     class Students
  12.     {
  13.         public int num;
  14.         public string FIO;
  15.         public DateTime Birthday;
  16.         public string Institute;
  17.         public string Group;
  18.         public int Step;
  19.         public double Ball;
  20.     }
  21.     class Program
  22.     {
  23.         public static void Main()
  24.         {
  25.             Students Student = new Students();
  26.             List<Students> Note = new List<Students>();
  27.  
  28.             FileStream file = new FileStream("ListofStudents.txt", FileMode.Open, FileAccess.ReadWrite);
  29.             StreamReader reader = new StreamReader(file, Encoding.UTF8);
  30.             StreamWriter writer = new StreamWriter(file, Encoding.UTF8);
  31.             string row;
  32.             do
  33.             {
  34.                 row = reader.ReadLine();
  35.                 string[] mas = new string[7];
  36.                 mas = row.Split(' ');
  37.                 Student.num = Convert.ToInt32(mas[0]);
  38.                 Student.FIO = mas[1];
  39.                 Student.Birthday = Convert.ToDateTime(mas[2]);
  40.                 Student.Institute = mas[3];
  41.                 Student.Group = mas[4];
  42.                 Student.Step = Convert.ToInt16(mas[5]);
  43.                 Student.Ball = Convert.ToDouble(mas[6]);
  44.                 Note.Add(Student);
  45.                 Student = new Students();
  46.             }
  47.             while (reader.EndOfStream == false);
  48.             Console.WriteLine("База данных:");
  49.             for (int i = 0; i < Note.Count; i++)
  50.             {
  51.                 Console.WriteLine(Note[i].num + "\t" + Note[i].FIO + "\t" + Note[i].Birthday + "\t" + Note[i].Institute + "\t" + Note[i].Group + "\t" + Note[i].Step + "\t" + Note[i].Ball);
  52.             }
  53.             Console.ReadKey();
  54.             Console.Write("Выберите действие:\n 1) Добавить запись; \n 2) Удалить запись \n 3)Изменить запись \n 4) Прямая сортировка \n 5) Обратная сортировка; \n 6) Поиск эл-та \n 7) Переход к пункту меню: Средний балл \n");
  55.             int choose = Convert.ToInt32(Console.ReadLine());
  56.             switch (choose)
  57.             {
  58.                 case 1:
  59.                     {
  60.                         try
  61.                         {
  62.                             Student = new Students();
  63.                             string plus = Console.ReadLine();
  64.                             string[] masPlus = plus.Split(' ');
  65.                             Student.num = Convert.ToInt32(masPlus[0]);
  66.                             Student.FIO = masPlus[1];
  67.                             Student.Birthday = Convert.ToDateTime(masPlus[2]);
  68.                             Student.Institute = masPlus[3];
  69.                             Student.Group = masPlus[4];
  70.                             Student.Step = Convert.ToInt16(masPlus[5]);
  71.                             Student.Ball = Convert.ToDouble(masPlus[6]);
  72.                             Note.Add(Student);
  73.                             Console.WriteLine("Изменённый список:");
  74.                             for (int i = 0; i < Note.Count; i++)
  75.                             {
  76.                                 Console.WriteLine(Note[i].num + "\t" + Note[i].FIO + "\t" + Note[i].Birthday + "\t" + Note[i].Institute + "\t" + Note[i].Group + "\t" + Note[i].Step + "\t" + Note[i].Ball);
  77.                             }
  78.                             Console.ReadKey();
  79.                         }
  80.                         catch (System.FormatException)
  81.                         {
  82.                             Console.WriteLine("Проверьте правильность введенных данных");
  83.                             Console.ReadKey();
  84.                             break;
  85.                         }
  86.                         break;
  87.                     }
  88. //////////////////////////////////////////////////осткод//////////////////////////////////////////////////

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.333 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы