Вывести в новый файл информацию о студентах, успешно сдавших сессию, отсортировав по номеру группы - C#
Формулировка задачи:
На основе данных входного файла составить список студентов группы, включив следующие данные: ФИО, номер группы, результаты сдачи трех экзаменов. Вывести в новый файл информацию о студентах, успешно сдавших сессию, отсортировав по номеру группы.
ПОМОГИТЕ ПЛИЗ!
не знаю, как результат по 3 экзаменам сделать(((
class Program
{
struct Vedomost : IComparable
{
string FIO;//ФИО
int number;//Номер группы
int results;//результаты сдачи 3х экзаменов
public Vedomost(string FIO, int number, int results)
{
this.FIO = FIO;
this.number = number;
this.results = results;
}
public void Print(int k)
{
if (k >= this.results)
Console.WriteLine("{0} {1} {2}", this.FIO, this.number, this.results);
}
public override string ToString()
{
return "" + FIO + " " + number.ToString() + " " + results.ToString() + "";
}
public int CompareTo(object obj) //сортировка
{
Vedomost b = (Vedomost)obj;
if (this.number == b.number) return 0;
else if (this.number > b.number) return 1;
else return -1;
}
}
static void Main(string[] args)
{
Vedomost[] V = {new Vedomost("Иванов Сергей Иванович",1,9),
new Vedomost("Соколов Сергей Иванович",2,12),
new Vedomost("Сидорова Екатерина Петровна",3,6),
new Vedomost("Овчинников Илья Васильевич",4,10),
new Vedomost("Савельева Ирина Олеговна",5,7)};
foreach (Vedomost a in V)
{
Console.WriteLine(a.ToString());
}
Console.WriteLine();
Console.WriteLine("Введите сумму оценок: ");
Console.WriteLine();
int f = int.Parse(Console.ReadLine());
Array.Sort(V);
Console.WriteLine();
Console.WriteLine("сортировка по количеству вещей: ");
foreach (Vedomost a in V)
{
a.Print(f);
}
Console.WriteLine();
Console.ReadKey();
}
}
}Решение задачи: «Вывести в новый файл информацию о студентах, успешно сдавших сессию, отсортировав по номеру группы»
textual
Листинг программы
class Program
{
struct Vedomost
{
public string FIO;//ФИО
public int number;//Номер группы
public int[] results;//результаты сдачи 3х экзаменов
public Vedomost(string FIO, int number, int[] results)
{
this.FIO = FIO;
this.number = number;
this.results = results;
}
public void Vivod()
{
Console.WriteLine("{0} ({1}) : {2}", FIO, number, String.Join(" ", results));
}
}
static Random r = new Random();
static int[] Rand()
{
return Enumerable.Range(0, 3).Select(v => r.Next(2, 6)).ToArray();
}
static void Main(string[] args)
{
Vedomost[] V = { new Vedomost("Иванов Сергей Иванович", 3, Rand()),
new Vedomost("Соколов Сергей Иванович", 2, Rand()),
new Vedomost("Сидорова Екатерина Петровна", 1, Rand()),
new Vedomost("Овчинников Илья Васильевич", 5, Rand()),
new Vedomost("Савельева Ирина Олеговна", 4, Rand())};
V = V.OrderBy(v => v.number).ToArray();
foreach (var a in V)
{
a.Vivod();
if (a.results.Average() >= 3)
System.IO.File.AppendAllText(@"E:\1.txt", String.Format("{0} ({1}) : {2}{3}",
a.FIO, a.number, String.Join(" ", a.results), Environment.NewLine));
}
Console.ReadKey();
}
}
}