Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.10.2014, 22:41   #1
V-alterman
Пользователь
 
Регистрация: 07.12.2013
Сообщений: 26
По умолчанию Требуется составить программу, которая реализует ввод таблицы, состоящей из n строк

Доброго времени суток! Помогите, пожалуйста, сделать ввод данных с клавиатуры, заранее огромное спасибо!
Каждая строка таблицы содержит следующую информацию : ФИО выпускника, количество дипломов, названия образовательных учреждений, год окончания.
Ко всему этому, каждая строка должна быть представлена в виде объекта и нужно переопределить метод toString() для вывода объектов.
И ещё кое-что:
1)определить выпускника с максимальным количеством дипломов.
2)определить выпускников заданного года.
Вот у меня есть код.
Код:
public class Student {
    private String surname;
    private int countdiplom;
    private String institute;
    private int year;
    
    public Student(String surname, int countdiplom, String institute, int year) {
        this.surname = surname;
        this.countdiplom = countdiplom;
        this.institute = institute;
        this.year = year;
    }
    
    public String getSurname() {
        return surname;
    }
    
    public int getCountdiplom() {
        return countdiplom;
    }
    
    public String getInstitute() {
        return institute;
    }
    
    public int getYear() {
        return year;
    }
    
    @Override
    public String toString() {
        return "Фамилия: " + getSurname() + "\n"
                + "Количество дипломов: " + getCountdiplom() + "\n"
                + "Название ВУЗА: " + getInstitute() + "\n"
                + "Год выпуска: " + getYear() + "\n";
    }
 
}
Код:
public static void main(String... args){
        Student[] students = new Student[3];
        students[0] = new Student("Иванов", 2, "Durham University", 2011);
        students[1] = new Student("Петров", 3, "Imperial College London", 2010);
        students[2] = new Student("Сидоров", 2, "London School of Economics and Political Science", 2011);
        
        // Выводим всю информацию
        for(Student information: students){
            System.out.println(information.toString());
        }
        
        // Выводим выпускников 2011
        for(int i = 0; i < students.length; i++){
            if(students[i].getYear() == 2011){
                System.out.println("Выпускник: " + students[i].getSurname());
            }
        }
        
        // Ищем студента с самым большим числом дипломов
        int max = students[0].getCountdiplom();
        for(int i = 0; i < students.length; i++){
            if(students[i].getCountdiplom() > max){
                max = students[i].getCountdiplom();
            }
        }
        
        System.out.println();
        
        // Выводим студентов с самым большим кол-вом дипломов
        System.out.println("Самое большое число дипломов: ");
        int search = max;
        for(int i = 0; i < students.length; i++){
            if(students[i].getCountdiplom() == search){
                System.out.println(students[i].getSurname());
            }
        }
    }

Последний раз редактировалось V-alterman; 22.10.2014 в 22:48.
V-alterman вне форума Ответить с цитированием
Старый 23.10.2014, 08:40   #2
ultimatet41
Форумчанин
 
Аватар для ultimatet41
 
Регистрация: 08.04.2012
Сообщений: 104
По умолчанию

Код:
 public static void main(String[] args) throws IOException {
        ArrayList<Student> students = new ArrayList<Student>();

        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Вы хотите добавить нового студента (y-да|n-нет):");

        while (!reader.readLine().equals("n")){
            System.out.print("Введите ФИО:");
            String surname = reader.readLine();

            System.out.print("Введите количество дипломов:");
            int countdiplom = Integer.parseInt(reader.readLine());

            System.out.print("Введите названия образовательных учреждений:");
            String institute = reader.readLine();

            System.out.print("Введите год окончания:");
            int year = Integer.parseInt(reader.readLine());

            Student student = new Student(surname, countdiplom, institute, year);
            students.add(student);
            System.out.print("Вы хотите добавить нового студента (y-да|n-нет):");
        }
        reader.close();

        for (Student st : students) {
            System.out.println(st);
        }
    }
ultimatet41 вне форума Ответить с цитированием
Старый 23.10.2014, 12:11   #3
V-alterman
Пользователь
 
Регистрация: 07.12.2013
Сообщений: 26
По умолчанию

Спасибо огромное!
V-alterman вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Составить программу, которая запрашивает пароль Olesya2406 Помощь студентам 5 28.04.2015 17:20
Написать программу для Паскаль 9 класс: составить программу которая печатает таблицу умножения и сложения натуральных чисел goodula Помощь студентам 0 23.01.2014 17:39
Составить программу вычисления и печати таблицы значений функции при заданных значениях параметров Составить программу вычисле Марина1986 C/C++ Сетевое программирование 1 08.05.2013 13:34
Организация стека. Написать программу на языке C + + которая реализует стек. Кулибаба Петро C++ Builder 0 16.01.2013 22:47