Cоставить Программу, Которая Реализует Ввод Таблицы, Состоящей Из N Ст

Статус
Закрыто для дальнейших ответов.

V-Alterman

New Member
28.10.2014
1
0
#1
Доброго времени суток, есть вот такое задание.
Каждая строка таблицы содержит следующую информацию : ФИО выпускника, количество дипломов, название образовательного учреждения, год окончания.
Ко всему этому, каждая строка должна быть представлена в виде объекта и нужно переопределить метод toString() для вывода объектов.
И ещё кое-что:
1)определить выпускника с максимальным количеством дипломов.
2)определить выпускников заданного года.
Это я вроде бы сделал.
Но преподаватель требует, чтобы каждому диплому соответствовал разный вуз и выводилось это всё в строчку, например:
Vasiliy 2 MGU 2005 MIFI 2012
т.е., сначала имя, потом количество дипломов, а потом учреждение и год окончания.
Заранее огромное спасибо.
Вот имеющийся код.
Код:
package lol3.last;
import javax.swing.JOptionPane;
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;
}
Student(String institute, int year) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}

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() + " "
+ "Количество дипломов: " + getCountdiplom() + " "
+ "Название ВУЗА: " + getInstitute() + " "
+ "Год выпуска: " + getYear() + " ";
}

}
Код:
package lol3.last;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Lol3Last {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
int n;

n=Integer.parseInt(JOptionPane.showInputDialog("Задайте год"));
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.toString());
}

// Выводим выпускников 2011
System.out.println("Выпускник "+n+" года: ");
for(int i = 0; i < students.size(); i++){
if(students.get(i).getYear() == n){
System.out.println(students.get(i).getSurname());
}
}


// Ищем студента с самым большим числом дипломов
int max = students.get(0).getCountdiplom();
for(int i = 0; i < students.size(); i++){
if(students.get(i).getCountdiplom() > max){
max = students.get(i).getCountdiplom();
}
}

System.out.println();

// Выводим студентов с самым большим кол-вом дипломов
System.out.println("Самое большое число дипломов: ");
int search = max;
for(int i = 0; i < students.size(); i++){
if(students.get(i).getCountdiplom() == search){
System.out.println(students.get(i).getSurname());
}
}
}
}
 
Статус
Закрыто для дальнейших ответов.