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, catGrandfather, null);
String motherName = reader.readLine();
Cat catMother = new Cat(motherName, null, catGrandmother);
String sonName = reader.readLine();
Cat catSon = new Cat(sonName, catFather, catMother);
String daughterName = reader.readLine();
Cat catDaughter = new Cat(daughterName, catFather, catMother);
System.out.println(catGrandfather);
System.out.println(catGrandmother);
System.out.println(catFather);
System.out.println(catMother);
System.out.println(catSon);
System.out.println(catDaughter);
}
public static class Cat {
private String name;
private Cat father;
private Cat mother;
Cat(String name) {
this.name = name;
}
Cat(String name, Cat father, Cat mother) {
this.name = name;
this.father = father;
this.mother = mother;
}
@Override
public String toString() {
if (father == null && mother == null)
return "The cat's name is " + name + ", no father " + ", no mother ";
else if (father == null )
return "The cat's name is " + mother.name + ", no father ";
else if (mother == null)
return "The cat's name is " + father.name + ", no mother ";
else
return "The cat's name is " + name + ", " + father.name + " is the father" + mother.name + " is the mother";
}
}
}
package com.codegym.task.task06.task0621;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
1. The program should read in the names of 6 cats in the specified order.
2. The main method should create 6 Cat objects.
3. The program should display 6 lines with information about the cats.
4. The line about the grandfather (first line) must match the conditions.
5. The line about the grandmother (second line) must match the conditions.
6. The line about the father (third line) must match the conditions.
7. The line about the mother (fourth line) must match the conditions.
8. The line about the son (fifth line) must match the conditions.
9. The line about the daughter (sixth line) must match the conditions.
*/
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, catGrandfather, null);
String motherName = reader.readLine();
Cat catMother = new Cat(motherName, null, catGrandmother);
String sonName = reader.readLine();
Cat catSon = new Cat(sonName, catFather, catMother );
String daughterName = reader.readLine();
Cat catDaughter = new Cat(daughterName, catFather, catMother );
System.out.println(catGrandfather);
System.out.println(catGrandmother);
System.out.println(catFather);
System.out.println(catMother);
System.out.println(catSon);
System.out.println(catDaughter);
}
public static class Cat {
private String name;
private Cat father;
private Cat mother;
Cat(String name) {
this.name = name;
}
Cat(String name, Cat father, Cat mother) {
this.name = name;
this.father = father;
this.mother = mother;
}
@Override
public String toString() {
if (father==null && mother==null)
return "The cat's name is " + name + ", no father " + ", no mother ";
else if (father==null)
return "The cat's name is " + mother.name + ", no father ";
else if (mother==null)
return "The cat's name is " + father.name + ", no mother ";
else
return "The cat's name is " + name + ", " + father.name + " is the father" + mother.name + " is the mother";
}
}
}