/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
class Student
{
this.firstName = firstName;
this.lastName = lastName;
this.peselId = peselId;
}
public boolean equals(Student e){
return (this.firstName == e.firstName) && (this.lastName == e.lastName) &&
(this.peselId == e.peselId);
}
return firstName + " " + lastName + " (" + peselId + ")";
}
}
class Mark
{
this.marksMath = marksMath;
this.marksPhysics = marksPhysics;
this.marksHistory = marksHistory;
this.marksBiology = marksBiology;
this.marksPolishLanguage = marksPolishLanguage;
}
return marksMath + ", " + marksPhysics + ", " +
marksHistory + ", " + marksBiology + ", " + marksPolishLanguage;
}
}
class Application
{
{
Student student1 = new Student("Kacper", "Malinowski", "86300899888");
Student student2 = new Student("Antoni", "Chełmski", "86121266555");
// Student student3 = new Student("Ewa", "Drygała", "86040188222");
// Student student4 = new Student("Emil", "Kapustka", "86040566777");
// Student student5 = new Student("Barbara", "Szałańska", "86111011444");
Mark mark1 = new Mark(5, 2, 4, 4, 4);
Mark mark2 = new Mark(3, 4, 5, 5, 5);
// Mark mark3 = new Mark(4, 3, 3, 2, 2);
// Mark mark4 = new Mark(2, 2, 3, 5, 2);
// Mark mark5 = new Mark(6, 6, 4, 5, 5);
HashMap<Student, Mark> marksStudents = new HashMap<Student, Mark>();
marksStudents.put(student1, mark1);
marksStudents.put(student2, mark2);
// marksStudents.put(student3, mark3);
// marksStudents.put(student4, mark4);
// marksStudents.put(student5, mark5);
for(Map.
Entry<Student, Mark
> entry
: marksStudents.
entrySet()){ double sum=0;
sum = entry.getValue().marksMath + entry.getValue().marksPhysics + entry.getValue().marksHistory + entry.getValue().marksBiology + entry.getValue().marksPolishLanguage;
System.
out.
println("Uczeń: " + entry.
getKey() + ", oceny: " + entry.
getValue() + ", Średnia ocen ucznia: " + sum
/marksStudents.
size()); }
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBTdHVkZW50CnsKCVN0cmluZyBmaXJzdE5hbWU7CglTdHJpbmcgbGFzdE5hbWU7CglTdHJpbmcgcGVzZWxJZDsKCQoJcHVibGljIFN0dWRlbnQoU3RyaW5nIGZpcnN0TmFtZSwgU3RyaW5nIGxhc3ROYW1lLCBTdHJpbmcgcGVzZWxJZCl7CgkJdGhpcy5maXJzdE5hbWUgPSBmaXJzdE5hbWU7CgkJdGhpcy5sYXN0TmFtZSA9IGxhc3ROYW1lOwoJCXRoaXMucGVzZWxJZCA9IHBlc2VsSWQ7Cgl9CgkKCXB1YmxpYyBib29sZWFuIGVxdWFscyhTdHVkZW50IGUpewoJCXJldHVybiAodGhpcy5maXJzdE5hbWUgPT0gZS5maXJzdE5hbWUpICYmICh0aGlzLmxhc3ROYW1lID09IGUubGFzdE5hbWUpICYmCgkJICAgICAgICh0aGlzLnBlc2VsSWQgPT0gZS5wZXNlbElkKTsKCX0KCQoJcHVibGljIFN0cmluZyB0b1N0cmluZygpewoJCXJldHVybiBmaXJzdE5hbWUgKyAiICIgKyBsYXN0TmFtZSArICIgKCIgKyBwZXNlbElkICsgIikiOwoJfQp9CgpjbGFzcyBNYXJrCnsKCUludGVnZXIgbWFya3NNYXRoOwoJSW50ZWdlciBtYXJrc1BoeXNpY3M7CglJbnRlZ2VyIG1hcmtzSGlzdG9yeTsKCUludGVnZXIgbWFya3NCaW9sb2d5OwoJSW50ZWdlciBtYXJrc1BvbGlzaExhbmd1YWdlOwoJCglwdWJsaWMgTWFyayhJbnRlZ2VyIG1hcmtzTWF0aCwgSW50ZWdlciBtYXJrc1BoeXNpY3MsIEludGVnZXIgbWFya3NIaXN0b3J5LCBJbnRlZ2VyIG1hcmtzQmlvbG9neSwgSW50ZWdlciBtYXJrc1BvbGlzaExhbmd1YWdlKXsKCQl0aGlzLm1hcmtzTWF0aCA9IG1hcmtzTWF0aDsKCQl0aGlzLm1hcmtzUGh5c2ljcyA9IG1hcmtzUGh5c2ljczsKCQl0aGlzLm1hcmtzSGlzdG9yeSA9IG1hcmtzSGlzdG9yeTsKCQl0aGlzLm1hcmtzQmlvbG9neSA9IG1hcmtzQmlvbG9neTsKCQl0aGlzLm1hcmtzUG9saXNoTGFuZ3VhZ2UgPSBtYXJrc1BvbGlzaExhbmd1YWdlOwoJfQoJCglwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCl7CiAgICAJcmV0dXJuIG1hcmtzTWF0aCArICIsICIgKyBtYXJrc1BoeXNpY3MgKyAiLCAiICsKICAgIAkgICAgICAgbWFya3NIaXN0b3J5ICsgIiwgIiArIG1hcmtzQmlvbG9neSArICIsICIgKyBtYXJrc1BvbGlzaExhbmd1YWdlOwogICAgfQp9CgpjbGFzcyBBcHBsaWNhdGlvbgp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsKCQlTdHVkZW50IHN0dWRlbnQxID0gbmV3IFN0dWRlbnQoIkthY3BlciIsICJNYWxpbm93c2tpIiwgIjg2MzAwODk5ODg4Iik7CgkJU3R1ZGVudCBzdHVkZW50MiA9IG5ldyBTdHVkZW50KCJBbnRvbmkiLCAiQ2hlxYJtc2tpIiwgIjg2MTIxMjY2NTU1Iik7CgkJLy8gU3R1ZGVudCBzdHVkZW50MyA9IG5ldyBTdHVkZW50KCJFd2EiLCAiRHJ5Z2HFgmEiLCAiODYwNDAxODgyMjIiKTsKCQkvLyBTdHVkZW50IHN0dWRlbnQ0ID0gbmV3IFN0dWRlbnQoIkVtaWwiLCAiS2FwdXN0a2EiLCAiODYwNDA1NjY3NzciKTsKCQkvLyBTdHVkZW50IHN0dWRlbnQ1ID0gbmV3IFN0dWRlbnQoIkJhcmJhcmEiLCAiU3phxYJhxYRza2EiLCAiODYxMTEwMTE0NDQiKTsKCQkKCQlNYXJrIG1hcmsxID0gbmV3IE1hcmsoNSwgMiwgNCwgNCwgNCk7CgkJTWFyayBtYXJrMiA9IG5ldyBNYXJrKDMsIDQsIDUsIDUsIDUpOwoJCS8vIE1hcmsgbWFyazMgPSBuZXcgTWFyayg0LCAzLCAzLCAyLCAyKTsKCQkvLyBNYXJrIG1hcms0ID0gbmV3IE1hcmsoMiwgMiwgMywgNSwgMik7CgkJLy8gTWFyayBtYXJrNSA9IG5ldyBNYXJrKDYsIDYsIDQsIDUsIDUpOwoJCQoJCUhhc2hNYXA8U3R1ZGVudCwgTWFyaz4gbWFya3NTdHVkZW50cyA9IG5ldyBIYXNoTWFwPFN0dWRlbnQsIE1hcms+KCk7CgkJCgkJbWFya3NTdHVkZW50cy5wdXQoc3R1ZGVudDEsIG1hcmsxKTsKCQltYXJrc1N0dWRlbnRzLnB1dChzdHVkZW50MiwgbWFyazIpOwoJCS8vIG1hcmtzU3R1ZGVudHMucHV0KHN0dWRlbnQzLCBtYXJrMyk7CgkJLy8gbWFya3NTdHVkZW50cy5wdXQoc3R1ZGVudDQsIG1hcms0KTsKCQkvLyBtYXJrc1N0dWRlbnRzLnB1dChzdHVkZW50NSwgbWFyazUpOwoJCQoJCQoJCWZvcihNYXAuRW50cnk8U3R1ZGVudCwgTWFyaz4gZW50cnkgOiBtYXJrc1N0dWRlbnRzLmVudHJ5U2V0KCkpewoJCQlkb3VibGUgc3VtPTA7CgkJCXN1bSA9IGVudHJ5LmdldFZhbHVlKCkubWFya3NNYXRoICsgZW50cnkuZ2V0VmFsdWUoKS5tYXJrc1BoeXNpY3MgKyBlbnRyeS5nZXRWYWx1ZSgpLm1hcmtzSGlzdG9yeSArIGVudHJ5LmdldFZhbHVlKCkubWFya3NCaW9sb2d5ICsgZW50cnkuZ2V0VmFsdWUoKS5tYXJrc1BvbGlzaExhbmd1YWdlOwoJCQlTeXN0ZW0ub3V0LnByaW50bG4oIlVjemXFhDogIiArIGVudHJ5LmdldEtleSgpICsgIiwgb2Nlbnk6ICIgKyBlbnRyeS5nZXRWYWx1ZSgpICsgIiwgxZpyZWRuaWEgb2NlbiB1Y3puaWE6ICIgKyBzdW0vbWFya3NTdHVkZW50cy5zaXplKCkpOwoJCX0KCQkKCX0KfQ==