package com.javarush.task.task06.task0621; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /* Родственные связи кошек */ public class Solution { public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); String grandfatherName = reader.readLine(); Cat catGrandfather = new Cat(grandfatherName); String grandmotherName = reader.readLine(); Cat catGrandmother = new Cat(grandmotherName); String fatherName = reader.readLine(); Cat catFather = new Cat(fatherName, null, catGrandfather); String motherName = reader.readLine(); Cat catMother = new Cat(motherName, catGrandmother, null); String sonName = reader.readLine(); Cat catSon = new Cat(sonName, catMother, catFather); String daughterName = reader.readLine(); Cat catDaughter = new Cat(daughterName, catMother, catFather); String nemesisName = reader.readLine();// Решил добавить новый вид кота у которого есть дед и бабушка, и он вроде бы ссылается на деду с бабой //но все равно почему то не работает. Cat catNemesis = new Cat(nemesisName, catMother, catFather, catGrandfather, catGrandmother); System.out.println(catGrandfather); System.out.println(catGrandmother); System.out.println(catFather); System.out.println(catMother); System.out.println(catSon); System.out.println(catDaughter); System.out.println(nemesisName); } public static class Cat { private String name; private Cat father; private Cat mother; private Cat grandfather; private Cat grandmother; Cat(String name) { this.name = name; } Cat(String name, Cat mother) { this.name = name; this.mother = mother; } Cat(String name, Cat mother, Cat father) { this.name = name; this.mother = mother; this.father = father; } Cat(String name, Cat mother, Cat father, Cat grandfather, Cat grandmother) { this.name = name; this.mother = mother; this.father = father; this.grandfather = grandfather; this.grandmother = grandmother; } @Override public String toString() { if (mother == null && father == null) { return "The cat's name is " + name + ", no mother, no father"; } else if (mother != null && father == null) { return "The cat's name is " + name + ", mother is " + mother.name + ", no father "; } else if (mother == null && father != null) { return "The cat's name is " + name + ", no mother, father is " + father.name; } else if (mother != null && father != null) { return "The cat's name is " + name + ", mother, father is " + father.name + grandfather.name + grandmother.name; } else return "The cat's name is " + name + ", mother is " + mother.name + ", father is " + father.name; } } }