Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 09.05.2016
Сообщений: 22
1

Чтение и запись текстовых файлов

19.05.2016, 11:27. Показов 1000. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дан текстовый файл (in.txt) содержащий список учащихся и их оценки по трем

предметам: математике, физике, информатике.

Формат файла: сначала количество учащихся n, затем n строк, каждая из которых

содержит фамилию, имя и три числа. Данные в строке разделены одним пробелом.

Оценки принимают значение от 1 до 5.

Пример входного файла:

4

Ivanov Vasiliy 4 3 4

Petrov Sergey 5 3 5

Konstantinov Nikolay 4 4 5

Kuznetsov Ivan 5 5 5
Выведите три действительных числа: средний балл всех учащихся по математике,

по физике, по информатике. Определите учащихся с наилучшей успеваемостью, то есть с

максимальным средним баллом по трем предметам. Выведите в файл out.txt одного или

нескольких учащихся, имеющих максимальный средний балл.

Добавлено через 1 минуту
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
namespace _1
{
    class Info
    {
        string[] all_text_arr;
 
        public double Avr_math { get; private set; }
        public double Avr_ph { get; private set; }
        public double Avr_inf { get; private set; }
 
        string[] lastName;
        string[] name;
        int[] math;
        int[] ph;
        int[] inf;
 
        double[] avr; //средний бал
 
        public Info(string path)
        {
            all_text_arr = File.ReadAllLines(path).Skip(1).ToArray(); // заносим в массив все строки кроме первой
 
            lastName = new string[all_text_arr.Length];
            name = new string[all_text_arr.Length];
            math = new int[all_text_arr.Length];
            ph = new int[all_text_arr.Length];
            inf = new int[all_text_arr.Length];
 
            avr = new double[all_text_arr.Length];
 
            for (int i = 0; i < all_text_arr.Length; i++)
            {
                lastName[i] = all_text_arr[i].Split(' ')[0];
                name[i] = all_text_arr[i].Split(' ')[1];
                math[i] = int.Parse(all_text_arr[i].Split(' ')[2]);
                ph[i] = int.Parse(all_text_arr[i].Split(' ')[3]);
                inf[i] = int.Parse(all_text_arr[i].Split(' ')[4]);
 
                avr[i] = (math[i] + ph[i] + inf[i]) / 3;
            }
 
            Avr_math = math.Average();
            Avr_ph = ph.Average();
            Avr_inf = inf.Average();
        }
 
        public string[] Max()
        {
            double avr_max = avr.Max();
            var list = new List<string>();
            for (int i = 0; i < all_text_arr.Length; i++)
            {
                if (avr[i] == avr.Max()) list.Add(lastName[i] + " " + name[i] + " средний балл: " + avr[i]);
            }
            return list.ToArray();
        }
    }
 
    Main(string[] args)
    {
        Info inf = new Info("in.txt");
        Console.WriteLine("Средний балл по математике: {0}", inf.Avr_math);
        Console.WriteLine("Средний балл по физике: {0}", inf.Avr_ph);
        Console.WriteLine("Средний балл по информатике: {0}", inf.Avr_inf);
 
        Console.WriteLine("C наилучшей успеваемостью:");
        foreach (var item in inf.Max())
        {
            Console.WriteLine(item);
        }
 
        File.WriteAllLines("out.txt", inf.Max());
 
        Console.ReadLine();
    }
Добавлено через 2 минуты
В 57 строке ошибка: метод должен иметь тип возвращаемого значения.... Никак не могу сообразить. Подскажите, пожалуйста
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.05.2016, 11:27
Ответы с готовыми решениями:

Чтение и обработка текстовых файлов
Имеется текстовый файл, содержащий строки, первые символы которых обозначают различные типы данных...

Чтение текстовых файлов из SFX
Доброго времени суток уважаемые господа. Собственно возникла очень большая потребность в том чтобы...

Чтение из всех текстовых файлов в каталоге
Обьясните и лучше с кодом след задачу: Есть папка, в которой целая куча txt файликов. Как мне...

Запись и чтение файлов
День добрый, подскажите какими методами осуществляется чтение и запись данных в файл? Я использую...

3
Эксперт .NET
5877 / 4754 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
19.05.2016, 12:57 2
elpis95,
скобку с 57-й строки переставьте в конец кода + для Main установите тип возвращаемого значения void
1
0 / 0 / 0
Регистрация: 09.05.2016
Сообщений: 22
19.05.2016, 13:34  [ТС] 3
теперь программа выдает ошибку: программа не содержит статического метода "Main",подходящего для точки входа.
0
Эксперт .NET
5877 / 4754 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
19.05.2016, 13:41 4
elpis95,
кроме viod нужен еще и static:
C#
1
2
3
4
static void Main(string[] args)
{
   //...
}
0
19.05.2016, 13:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.05.2016, 13:41
Помогаю со студенческими работами здесь

запись и чтение файлов
Возникла проблема.Нужно читать из файла определенные значения...Т.е. как конфиг,но не совсем.. Т.е...

Чтение/запись файлов
1. Создать класс - объявить переменные, отвечающие за имя, фамилию, факультет, группу, оценки...

Запись и чтение бинарных файлов
Тем таких много вы можете сказать, но мне нужна помощь именно в ситуации, если вас не затруднит ...

Параллельное чтение и запись нескольких файлов
Нужно написать программу, которая параллельно копирует несколько файлов с помощью операций...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru