using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace INF_lab_9
{
class Program
{
static void Main(string[] args)
{
Student[] somemas = new Student[3];
somemas[0] = new Student("Андрей", "Неважно", "Сергеевич", 22, 12223, 5.6);
somemas[1] = new Student("Сергей", "Лучший", "Сергеевич", 19, 11112, 5.2);
somemas[2] = new Student("Антон", "Сергеев", "Васильевич", 20, 12313, 3.6);
List<Student> mn = new List <Student>();
for (int i = 0; i < 3; i++)
mn.Add(somemas[i]);
StudentGroup ob = new StudentGroup(mn);
int k = 0;
System.Console.WriteLine("(1) - Вывести весь список студентов");
System.Console.WriteLine("(2) - Поиск студента по идентификатору");
System.Console.WriteLine("(3) - Поиск студента по фамилии");
System.Console.WriteLine("(4) - Добавить студента");
System.Console.WriteLine("(5) - Удалить студента");
System.Console.WriteLine("(6) - Закончить работу");
do
{
System.Console.WriteLine("Введите номер команды:");
k = Convert.ToInt32(Console.ReadLine());
switch (k)
{
case (1): ob.Show(); break;
case (2): ob.SearchById(); break;
case (3): ob.SearchBySecondName(); break;
case (4): ob.AddElement(); break;
case (5): ob.DeleteElement(); break;
default: System.Console.WriteLine(""); break;
}
} while (k != 6);
System.Console.WriteLine("Работа завершена");
}
}
class Student
{
public Student(string name, string secondname, string lastname, int age, int id, double average)
{
this.name = name;
this.secondname = secondname;
this.lastname = lastname;
this.age = age;
this.id = id;
this.average = average;
}
~Student()
{
}
public string getName()
{
return name;
}
public string getLastName()
{
return lastname;
}
public string getSecondName()
{
return secondname;
}
public int getAge()
{
return age;
}
public int getId()
{
return id;
}
public double getAverage()
{
return average;
}
public void setName(string n)
{
name = n;
}
public void setLastName(string l)
{
lastname = l;
}
public void setSecondName(string s)
{
secondname = s;
}
public void setAge(int a)
{
age = a;
}
public void setId(int i)
{
id = i;
}
public void setAverage(int av)
{
average = av;
}
public void Show()
{
System.Console.WriteLine("Фамилия: " + secondname);
System.Console.WriteLine("Имя: " + name);
System.Console.WriteLine("Отчество: " + lastname);
System.Console.WriteLine("Возраст: " + age);
System.Console.WriteLine("Идентификатор: " + id);
System.Console.WriteLine("Средняя успеваемость: " + average);
System.Console.WriteLine();
}
private string name = "";
private string secondname = "";
private string lastname = "";
private int age = 0;
private int id = 0;
private double average = 0.0;
}
class StudentGroup
{
public StudentGroup(System.Collections.Generic.List<Student> mn)
{
this.mn = mn;
}
public void Show()
{
if (mn.Count > 0)
{
foreach (Student ob in mn)
ob.Show();
}
else
System.Console.WriteLine("Список пуст!");
}
public void DeleteElement()
{
if (mn.Count > 1)
{
System.Console.WriteLine("Список идентификаторов группы:");
foreach (Student ob in mn)
System.Console.WriteLine(ob.getId());
System.Console.WriteLine("Введите идентификатор удаляемого студента:");
int Id = Convert.ToInt32(Console.ReadLine());
for (int i = mn.Count - 1; i >= 0; i--)
if (mn[i].getId() == Id)
mn.RemoveAt(i);
}
else
System.Console.WriteLine("Группа пуста!");
}
public void AddElement()
{
System.Console.WriteLine("Введите имя студента:");
string n = Convert.ToString(Console.ReadLine());
System.Console.WriteLine("Введите фамилию студента:");
string sn = Convert.ToString(Console.ReadLine());
System.Console.WriteLine("Введите отчество студента:");
string ln = Convert.ToString(Console.ReadLine());
System.Console.WriteLine("Введите идентификатор студента:");
int Id = Convert.ToInt32(Console.ReadLine());
System.Console.WriteLine("Введите возраст студента:");
int ag = Convert.ToInt32(Console.ReadLine());
System.Console.WriteLine("Введите среднюю успеваемость студента:");
double av = Convert.ToDouble(Console.ReadLine());
Student m = new Student(n, sn, ln, Id, ag, av);
mn.Add(m);
}
public void SearchById()
{
int k = 0;
System.Console.WriteLine("Введите идентификатор студента, которого необходимо найти:");
int Id = Convert.ToInt32(Console.ReadLine());
foreach (Student ob in mn)
if (ob.getId() == Id){
ob.Show();
k = 1;
break;
}
else
k = 0;
if(k == 0) System.Console.WriteLine("Студента с таким идентификатором нет в списке!");
}
public void SearchBySecondName()
{
int k = 0;
System.Console.WriteLine("Введите фамилию студента, которого необходимо найти:");
string sn = Convert.ToString(Console.ReadLine());
foreach (Student ob in mn)
if (ob.getSecondName() == sn)
{
ob.Show();
k = 1;
break;
}
else
k = 0;
if(k == 0) System.Console.WriteLine("Студента с такой фамилией нет в списке!");
}
private System.Collections.Generic.List<Student> mn;
}
}