Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Java SE Mock и Stub https://www.cyberforum.ru/ java-j2se/ thread1884608.html
Как пользоваться методами mock и stub для модульного тестирования в JUnit?
Сравнить 2 масива чисел в процентнах Java SE
Здравствуйте. Проблема такая: Допустим это 2 команды игроков. Первый масив из 11ти чисел заполнен весь числами 50, а второй масив заполнен 40. Сначала нужно определить с каким шансом первая команда...
Java SE Ошибка the local variable x0 may not have been initialized
Вечер добрый! Возникла проблема, выдает ошибку для return х0: the local variable x0 may not have been initialized. Почитал подобную проблему, пишут что нужно добавить try...catch. Попробовал, но...
Java SE Cоздать иерархию классов 1) Создать абстрактный класс Программное_обеспечение с методами, позволяющими вывести на экран информацию о программном обеспечении, а также определить соответствие возможности использования (на... https://www.cyberforum.ru/ java-j2se/ thread1883994.html
Java SE Создать класс для работы с датой. https://www.cyberforum.ru/ java-j2se/ thread1883991.html
Создать класс для работы с датой. Разработать следующие элементы класса: a. Поле DataTime data. b. Конструкторы, позволяющие установить:  заданную дату  дату 1.01.2009 c. Методы,...
Ошибка в вычислении числа Пи Java SE
Добрый вечер :thank_you: Задача такова: Given an integer n, determine the number pi with an error less than n decimal places. Я решила вычислять по формуле Бэйли — Боруэйна — Плаффа. Мое...
Java SE Вызвать метод из другого приложения
1. Есть JavaFX приложение. 2. Есть JavaFX (или даже обычное) приложение. Мне нужно вызвать с приложения номер 2 нужный мне метод в приложении номер 1. С учётом того, что приложение номер 1 я никак...
Java SE Система уравнений генетическим алгоритмом добрый день, помогите пожалуйста в решении задачи, необходимо написать код программы, решающий систему уравнений генетическим алгоритмом. Буду очень благодарна https://www.cyberforum.ru/ java-j2se/ thread1883889.html
Java SE Доработать программу - предмет Компьютерные сети https://www.cyberforum.ru/ java-j2se/ thread1883880.html
Собственно есть программка , признаюсь , делал не сам , просил , но вроде как даже разобрался ... установил на комп jdk и успешно ,через командную строкУ, запустил программку , всё работает... Пошёл...
Java SE Объяснить поведение программы Здравствуйте, дамы и господа! Давайте темам осмысленные имена и задавайте конкретные вопросы. Собственно, сабж: import java.awt.*; import java.io.*; /** https://www.cyberforum.ru/ java-j2se/ thread1883806.html
0 / 0 / 0
Регистрация: 10.03.2016
Сообщений: 92
0

На основе данных входного файла составить список студентов

21.12.2016, 10:29. Просмотров 1616. Ответов 12
Метки (Все метки)

На основе данных входного файла составить список студентов группы, включив следующие данные: ФИО, номер группы, результаты сдачи трех экзаменов. Вывести в новый файл информацию о студентах, успешно сдавших сессию, отсортировав по номеру группы.
Замечания.
1. Во всех задачах данного раздела подразумевается, что исходная информация хранится в текстовом файле input.txt, каждая строка которого содержит полную информацию о некотором объекте, результирующая информация должна быть записана в файл output.txt.
2. Для хранения данных внутри программы организовать массив структур.
3. В типе структура реализуется метод CompareTo интерфейса IComparable, перегружается метод ToString базового класса object и необходимые операции отношения, поля данных и дополнительные методы продумайте самостоятельно.
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication6
{
    class Program
    {
        static void Main(string[] args)
        {
            Student_List _Student_List = new Student_List();
            using (System.IO.StreamReader _Read = new System.IO.StreamReader("zxc.txt.txt"))
            {
                while (!_Read.EndOfStream)//иду до конца файла
                {
                    String[] _Temp = _Read.ReadLine().Split(' ');
                    _Student_List.Add(
                        Convert.ToInt32(_Temp[0]),
                        _Temp[1], _Temp[2], _Temp[3],
                        Convert.ToInt32(_Temp[4]),
                        Convert.ToInt32(_Temp[5]),
                        Convert.ToInt32(_Temp[6]));
                }
            }
            Student_List Sorted_Student_List = _Student_List.Sdali();
            Sorted_Student_List.Sort_Number();
            Sorted_Student_List.Print();
            Sorted_Student_List.SaveToFile();
            Console.ReadKey();
        }
    }
 
    class Student_List
    {
        List<Student> _Sudent_List = new List<Student>(); //Динамический массив студентов;
 
        /// <summary>
        /// Структура студент содержит поля Ф,И,О, Номер группы, И 3 оценки;
        /// </summary>
        struct Student
        {
            internal String _Name, //имя;
                   _Family_Name, //фамилия;
                   _Middle_Name; //отчество;
            internal Int32 _Number_Group, //Номер группы;
                  _First_Exam,  //Первый экзамен;
                  _Second_Exam, //Второй экзамен;
                  _Third_Exam;  //Третий экзамен;
        }
 
        /// <summary>
        /// Добвляет запись о студенте в коллекцию;
        /// </summary>
        /// <param name="Name">Имя студента</param>
        /// <param name="Family_Name">Фамилия студента</param>
        /// <param name="Middle_Name">Отчество студента</param>
        /// <param name="Number_Group">Номер группы</param>
        /// <param name="First_Exam">Результат Первного экзамена</param>
        /// <param name="Second_Exam">Результат Второго экзамена</param>
        /// <param name="Third_Exam">Результат Третьего экзамена</param>
        public void Add(Int32 Number_Group, String Family_Name, String Name, String Middle_Name,
            Int32 First_Exam, Int32 Second_Exam, Int32 Third_Exam)
        {
            _Sudent_List.Add(
                new Student
                {
                    _Name = Name,
                    _Family_Name = Family_Name,
                    _Middle_Name = Middle_Name,
                    _Number_Group = Number_Group,
                    _First_Exam = First_Exam,
                    _Second_Exam = Second_Exam,
                    _Third_Exam = Third_Exam
                });
        }
        //перегрузка Add ..
        void Add(Student student)
        {
            _Sudent_List.Add(student);
        }
 
        //составление списка сдавших студентов
        public Student_List Sdali()
        {
            Student_List _Temp = new Student_List();
            for (Int32 i = 0; i < _Sudent_List.Count; i++)
            {//если по всем экзаменам >2 то сдал
                if (_Sudent_List[i]._First_Exam > 2 && _Sudent_List[i]._Second_Exam > 2 && _Sudent_List[i]._Third_Exam > 2)
                {
                    _Temp.Add(_Sudent_List[i]);//добавляю в коллекцию сдавших
                }
            }
            return _Temp;
        }
 
        public void Sort_Number()
        {
            this._Sudent_List.Sort(delegate(Student T, Student B)
            {
                return T._Number_Group.CompareTo(B._Number_Group);
            });
        }
 
        public void Print()
        {
            for (Int32 i = 0; i < _Sudent_List.Count; i++)
            {
                Console.WriteLine(_Sudent_List[i]._Family_Name + ' ' + _Sudent_List[i]._Name + ' ' + _Sudent_List[i]._Middle_Name
                    + " ({0:D}): {1:D} / {2:D} / {3:D}", _Sudent_List[i]._Number_Group, _Sudent_List[i]._First_Exam, _Sudent_List[i]._Second_Exam, _Sudent_List[i]._Third_Exam);
            }
        }
        public void SaveToFile()
        {
            System.IO.StreamWriter _W = new System.IO.StreamWriter("List1.txt");
            for (Int32 i = 0; i < _Sudent_List.Count; i++)
            {
                _W.WriteLine(_Sudent_List[i]._Family_Name + ' ' + _Sudent_List[i]._Name + ' ' + _Sudent_List[i]._Middle_Name
                    + " ({0:D}): {1:D} / {2:D} / {3:D}", _Sudent_List[i]._Number_Group, _Sudent_List[i]._First_Exam, _Sudent_List[i]._Second_Exam, _Sudent_List[i]._Third_Exam);
            }
            _W.Close();
        }
    }
}


Вернуться к обсуждению:
На основе данных входного файла составить список студентов
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.12.2016, 10:29
Готовые ответы и решения:

Составить список студентов группы на основе данных входного файла
На основе данных входного файла составить список студентов группы, включив следующие данные: ФИО,...

На основе данных входного файла составить список студентов группы
Помогите пожалуйста срочно испраить программу!! 1. исходная информация хранится в текстовом файле...

Структуры: На основе данных входного файла составить список студентов
На основе данных входного файла составить список студентов, включив следующие данные: ФИО,год...

Структуры: на основе данных входного файла составить список студентов группы
На основе данных входного файла составить список студентов группы, включив следующие данные: ФИО,...

12
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.