Есть текстовый файл (in.txt) содержащий список учащихся и их оценки по трем предметам: математике, физике, информатике - C#
Формулировка задачи:
Написал прогу, а она не работает.
Формат файла: сначала количество учащихся n, затем n строк, каждая из которых
содержит фамилию, имя и три числа. Данные в строке разделены одним пробелом.
Оценки принимают значение от 1 до 5.
Пример входного файла:
4
Ivanov Vasiliy 5 3 4
Petrov Sergey 4 3 5
Konstantinov Nikolay 5 5 5
Kuznetsov Ivan 5 4 4
Определите средний балл каждого из учащихся по каждому предмету. Выведите в
файл out.txt фамилии и имена учащихся, не имеющих троек (а также двоек и колов).
using System; using System.IO; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace New_3 { class Student { public string surname; public string name; public byte phys; public byte mat; public byte info; public Student() { surname = null; name = null; phys = 0; mat = 0; info = 0; } public Student(string surname, string name, byte mat, byte phys, byte info) { this.surname = surname; this.name = name; this.mat = mat; this.phys = phys; this.info = info; } public string Output() { return string.Format("{0} {1} {3} {4}", surname, name, mat, phys, info); } } class Program { static void Main(string[] args) { StreamReader input = new StreamReader("D:/IN.txt"); byte n = byte.Parse(input.ReadLine()); Console.WriteLine(n); Student[] students = new Student[n]; string buf = null; string[] bufsplit; for (int i = 0; i < n; i++) { buf = input.ReadLine(); bufsplit = buf.Split(' '); students[i] = new Student(bufsplit[0], bufsplit[1], byte.Parse(bufsplit[3]), byte.Parse(bufsplit[4]), byte.Parse(bufsplit[5])); Console.WriteLine("{0} {1}", i + 1, students[i].Output()); } Console.WriteLine("Файл считан"); StreamWriter output = new StreamWriter("D:/Out.txt"); byte j = 0; for(int i=0; i<n; i++) { if ((students[i].mat > 3) & (students[i].phys > 3) & (students[i].info > 3)) { j++; output.WriteLine(students[i].surname + " " + students[i].name + " " + (students[i].mat + students[i].info + students[i].phys) / 3); } } output.Close(); input.Close(); } } }
Причем ошибка на 59 строке.
Решение задачи: «Есть текстовый файл (in.txt) содержащий список учащихся и их оценки по трем предметам: математике, физике, информатике»
textual
Листинг программы
bufsplit[0], bufsplit[1], byte.Parse(bufsplit[2]), byte.Parse(bufsplit[3]), byte.Parse(bufsplit[4])
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д