//2задача
public class Main {
public static void main
( String [ ] args
) { Student[ ] students = new Student[ 4 ] ;
students[ 0 ] = new Student( "Кожедуб" , 19 , true ) ;
students[ 1 ] = new Student( "Шабаева" , false ) ;
students[ 2 ] = new Student( ) ;
students[ 3 ] = new Student( students[ 0 ] ) ;
for ( Student student : students) {
student.print ( ) ;
}
System .
out .
println ( "Средний возраст студента: " + Student.
averageAge ( students
) ) ; System .
out .
println ( "Количество студентов с задолженностями: " + Student.
countStudents ( students
) ) ; }
}
class Student {
private int age;
private boolean hasDebt;
public Student( ) {
this ( "" , 0 , false ) ;
}
public Student
( String name,
int age,
boolean hasDebt
) { this .name = name;
this .age = age;
this .hasDebt = hasDebt;
}
public Student
( String name,
boolean hasDebt
) { this ( name, 0 , hasDebt) ;
}
public Student( Student student) {
this .name = student.name ;
this .age = student.age ;
this .hasDebt = student.hasDebt ;
}
return name;
}
public int getAge( ) {
return age;
}
public boolean hasDebt( ) {
return hasDebt;
}
public static double averageAge( Student[ ] students) {
int t = 0 ;
int count = 0 ;
for ( Student student : students) {
if ( student.getAge ( ) != 0 ) {
t += student.getAge ( ) ;
count++;
}
}
return ( double ) t / count;
}
public static int countStudents( Student[ ] students) {
int count = 0 ;
for ( Student student : students) {
if ( student.hasDebt ( ) ) {
count++;
}
}
return count;
}
public void print( ) {
System .
out .
println ( "Имя: " + name
) ; if ( age != 0 ) {
System .
out .
println ( "Возраст: " + age
) ; }
if ( hasDebt) {
System .
out .
println ( "Имеет долги." ) ; } else {
System .
out .
println ( "Нет долгов." ) ; }
}
}
Ly8y0LfQsNC00LDRh9CwCnB1YmxpYyBjbGFzcyBNYWluIHsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICBTdHVkZW50W10gc3R1ZGVudHMgPSBuZXcgU3R1ZGVudFs0XTsKCiAgICAgICAgc3R1ZGVudHNbMF0gPSBuZXcgU3R1ZGVudCgi0JrQvtC20LXQtNGD0LEiLCAxOSwgdHJ1ZSk7CiAgICAgICAgc3R1ZGVudHNbMV0gPSBuZXcgU3R1ZGVudCgi0KjQsNCx0LDQtdCy0LAiLCBmYWxzZSk7CiAgICAgICAgc3R1ZGVudHNbMl0gPSBuZXcgU3R1ZGVudCgpOwogICAgICAgIHN0dWRlbnRzWzNdID0gbmV3IFN0dWRlbnQoc3R1ZGVudHNbMF0pOwoKICAgICAgICBmb3IgKFN0dWRlbnQgc3R1ZGVudCA6IHN0dWRlbnRzKSB7CiAgICAgICAgICAgIHN0dWRlbnQucHJpbnQoKTsKICAgICAgICB9CgogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigi0KHRgNC10LTQvdC40Lkg0LLQvtC30YDQsNGB0YIg0YHRgtGD0LTQtdC90YLQsDogIiArIFN0dWRlbnQuYXZlcmFnZUFnZShzdHVkZW50cykpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigi0JrQvtC70LjRh9C10YHRgtCy0L4g0YHRgtGD0LTQtdC90YLQvtCyINGBINC30LDQtNC+0LvQttC10L3QvdC+0YHRgtGP0LzQuDogIiArIFN0dWRlbnQuY291bnRTdHVkZW50cyhzdHVkZW50cykpOwogICAgfQp9CgpjbGFzcyBTdHVkZW50IHsKICAgIHByaXZhdGUgU3RyaW5nIG5hbWU7CiAgICBwcml2YXRlIGludCBhZ2U7CiAgICBwcml2YXRlIGJvb2xlYW4gaGFzRGVidDsKCiAgICBwdWJsaWMgU3R1ZGVudCgpIHsKICAgICAgICB0aGlzKCIiLCAwLCBmYWxzZSk7CiAgICB9CgogICAgcHVibGljIFN0dWRlbnQoU3RyaW5nIG5hbWUsIGludCBhZ2UsIGJvb2xlYW4gaGFzRGVidCkgewogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5hZ2UgPSBhZ2U7CiAgICAgICAgdGhpcy5oYXNEZWJ0ID0gaGFzRGVidDsKICAgIH0KCiAgICBwdWJsaWMgU3R1ZGVudChTdHJpbmcgbmFtZSwgYm9vbGVhbiBoYXNEZWJ0KSB7CiAgICAgICAgdGhpcyhuYW1lLCAwLCBoYXNEZWJ0KTsKICAgIH0KCiAgICBwdWJsaWMgU3R1ZGVudChTdHVkZW50IHN0dWRlbnQpIHsKICAgICAgICB0aGlzLm5hbWUgPSBzdHVkZW50Lm5hbWU7CiAgICAgICAgdGhpcy5hZ2UgPSBzdHVkZW50LmFnZTsKICAgICAgICB0aGlzLmhhc0RlYnQgPSBzdHVkZW50Lmhhc0RlYnQ7CiAgICB9CgogICAgcHVibGljIFN0cmluZyBnZXROYW1lKCkgewogICAgICAgIHJldHVybiBuYW1lOwogICAgfQoKICAgIHB1YmxpYyBpbnQgZ2V0QWdlKCkgewogICAgICAgIHJldHVybiBhZ2U7CiAgICB9CgogICAgcHVibGljIGJvb2xlYW4gaGFzRGVidCgpIHsKICAgICAgICByZXR1cm4gaGFzRGVidDsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGRvdWJsZSBhdmVyYWdlQWdlKFN0dWRlbnRbXSBzdHVkZW50cykgewogICAgICAgIGludCB0ID0gMDsKICAgICAgICBpbnQgY291bnQgPSAwOwogICAgICAgIGZvciAoU3R1ZGVudCBzdHVkZW50IDogc3R1ZGVudHMpIHsKICAgICAgICAgICAgaWYgKHN0dWRlbnQuZ2V0QWdlKCkgIT0gMCkgewogICAgICAgICAgICAgICAgdCArPSBzdHVkZW50LmdldEFnZSgpOwogICAgICAgICAgICAgICAgY291bnQrKzsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gKGRvdWJsZSkgdCAvIGNvdW50OwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgaW50IGNvdW50U3R1ZGVudHMoU3R1ZGVudFtdIHN0dWRlbnRzKSB7CiAgICAgICAgaW50IGNvdW50ID0gMDsKICAgICAgICBmb3IgKFN0dWRlbnQgc3R1ZGVudCA6IHN0dWRlbnRzKSB7CiAgICAgICAgICAgIGlmIChzdHVkZW50Lmhhc0RlYnQoKSkgewogICAgICAgICAgICAgICAgY291bnQrKzsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gY291bnQ7CiAgICB9CgogICAgcHVibGljIHZvaWQgcHJpbnQoKSB7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCLQmNC80Y86ICIgKyBuYW1lKTsKICAgICAgICBpZiAoYWdlICE9IDApIHsKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCLQktC+0LfRgNCw0YHRgjogIiArIGFnZSk7CiAgICAgICAgfQogICAgICAgIGlmIChoYXNEZWJ0KSB7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigi0JjQvNC10LXRgiDQtNC+0LvQs9C4LiIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigi0J3QtdGCINC00L7Qu9Cz0L7Qsi4iKTsKICAgICAgICB9CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCk7CiAgICB9Cn0K