• ,

level06.lesson11.bonus02 помогите не проходит

package com.javarush.test.level06.lesson11.bonus02;
/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама. Создать класс, который бы описывал данную ситуацию. Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.
Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама. Изменить класс Cat так, чтобы он мог описать данную ситуацию.
Создать 6 объектов: дедушку(папин папа), бабушку(мамина мама), папу, маму, сына, дочь.
Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

Пример ввода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка

Пример вывода:
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
*/

public class Solution
{
    public static void main(String[] args) throws IOException
    {

        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        Cat catGrandfather = new Cat(reader.readLine());
        Cat catGrandmother = new Cat(reader.readLine());
        Cat catFather = new Cat(reader.readLine(),null, catGrandfather);
        Cat catMother = new Cat(reader.readLine(),catGrandmother,null);
        Cat catSon = new Cat(reader.readLine(),catMother,catFather);
        Cat catDaudhter = new Cat(reader.readLine(),catMother,catFather);

        System.out.println(catGrandfather);
        System.out.println(catGrandmother);
        System.out.println(catFather);
        System.out.println(catMother);
        System.out.println(catSon);
        System.out.println(catDaudhter);
    }

    public static class Cat
    {
        private String name;
        private Cat mother;
        private Cat father;

        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;
        }

        @Override
        public String toString()
        {
            if (mother == null && father == null)
                return "Cat name is " + name + ", no mother" + ", no father";
            else
                if (mother != null && father == null)
                return "Cat name is " + name + ", mother is " + mother.name + ", no father";
                else
                    if (mother == null)
                    return "Cat name is " + name + ", no mother" + ", father is " + father.name;
                    else
                        return "Cat name is " + name + ", mother is " + mother.name + ", father is " + father.name;
        }
    }

}
  • ,

level06.lesson11.bonus02 Не проходит проверку. Что не так у меня в решении?

Не проходит проверку. Задание уже и по форуму сравнивал с другими решениями. Вроде все сходится, но проверку тем не менее не проходит. Где я ошибся?

package com.javarush.test.level06.lesson11.bonus02;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама. Создать класс, который бы описывал данную ситуацию. Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.
Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама. Изменить класс Cat так, чтобы он мог описать данную ситуацию.
Создать 6 объектов: дедушку(папин папа), бабушку(мамина мама), папу, маму, сына, дочь.
Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

Пример ввода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка

Пример вывода:
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
*/

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, null, null);

        String grandmotherName = reader.readLine();
        Cat catGrandmother = new Cat(grandmotherName, null, null);

        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);

        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 parent1; //мама
        private Cat parent2; //папа

        Cat(String name, Cat parent1, Cat parent2)
        {
            this.name = name;
            this.parent1 = parent1;
            this.parent2 = parent2;
        }

        @Override
        public String toString()
        {
            if (parent1 == null && parent2 == null)
                return "Cat name is " + name + ", no mother, no father "; // дедушка или бабушка
            else if (parent2 == null)
                return "Cat name is " + name + ", mother is " + parent1.name + ", no father "; // мама
            else if (parent1 == null)
                return "Cat name is " + name + " no mother, father is " + parent2.name; // папа
            else
                return "Cat name is " + name + ", mother is " + parent1.name + ", father is " + parent2.name;
        }
    }

}


Ввод/вывод:

дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка
Cat name is дедушка Вася, no mother, no father 
Cat name is бабушка Мурка, no mother, no father 
Cat name is папа Котофей no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father 
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
  • ,

level06.lesson11.bonus02 не проходит тест


package com.javarush.test.level06.lesson11.bonus02;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама. Создать класс, который бы описывал данную ситуацию.
Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.
Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама. Изменить класс Cat так, чтобы он мог описать данную ситуацию.
Создать 6 объектов: дедушку(папин папа), бабушку(мамина мама), папу, маму, сына, дочь.
Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

Пример ввода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка

Пример вывода:
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
*/

public class Solution
{
    public static void main(String[] args) throws IOException
    {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        String grandPapaName = reader.readLine();
        Cat granPapa = new Cat(grandPapaName, null, null);

        String grandMomName = reader.readLine();
        Cat grandMom = new Cat(grandMomName, null, null);

        String fatherName = reader.readLine();
        Cat catFather = new Cat(fatherName, granPapa, null);

        String motherName = reader.readLine();
        Cat catMother = new Cat(motherName, null, grandMom);

        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(granPapa);
        System.out.println(grandMom);
        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 parentPapa;
        private Cat parentMom;


        Cat(String name, Cat parentPapa, Cat parentMom)
        {
            this.name = name;
            this.parentPapa = parentPapa;
            this.parentMom = parentMom;
        }


        @Override
        public String toString()
        {
            if (parentPapa == null && parentMom == null)
                return "Cat name is " + name + ", no mother, no father";
            else
            {
                if (parentPapa == null)
                    return "Cat name is " + name + ", mother is " + parentMom.name + ", no father";

                else
                {
                    if (parentMom == null)
                        return "Cat name is " + name + ", no mother, father is " + parentPapa.name;
                    else
                        return "Cat name is " + name + ", mother is " + parentMom.name + ", father is " + parentPapa.name;
                }

            }

        }
    }

}


на входе — выходе:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей

все должно быть норм, а не получается. Подскажите, плиз, куда копать…
  • ,

level06.lesson11.bonus02 не проходит тестирование

package com.javarush.test.level06.lesson11.bonus02;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама. Создать класс, который бы описывал данную ситуацию. Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.
Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама. Изменить класс Cat так, чтобы он мог описать данную ситуацию.
Создать 6 объектов: дедушку(папин папа), бабушку(мамина мама), папу, маму, сына, дочь.
Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

Пример ввода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка

Пример вывода:
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
*/

public class Solution
{
public static void main(String[] args) throws IOException
{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

String gFName = reader.readLine();
Cat gFather = new Cat(gFName, null, null);

String gMName = reader.readLine();
Cat gMother = new Cat(gMName, null, null);

String fatherName = reader.readLine();
Cat catFather = new Cat(fatherName, gFather, null);

String motherName = reader.readLine();
Cat catMother = new Cat(motherName, null, gMother);

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(gFather);
System.out.println(gMother);
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 mother;
private Cat father;

Cat(String name, Cat father, Cat mother)
{
this.name = name;
this.father = father;
this.mother = mother;

}

@Override
public String toString()
{
if (mother == null && father == null)
return «Cat name is » + name + ", no mother, no father";
else if (father != null && mother == null)
return «Cat name is » + name + ", no mother, father is " + father.name;
else if (father == null && mother != null)
return «Cat name is » + name + ", mother is " + mother.name + ", no father";
else
return «Cat name is » + name + ", mother is " + mother.name + ", father is " + father.name;
}
}

}
где ошибка? выводит все правильно. тестирование не проходит (((

Спасите помогите((( уже не могу... весь форум обчитал, все переменял и все равно них***(((

package com.javarush.test.level06.lesson11.bonus02;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама. Создать класс, который бы описывал данную ситуацию. Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.
Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама. Изменить класс Cat так, чтобы он мог описать данную ситуацию.
Создать 6 объектов: дедушку(папин папа), бабушку(мамина мама), папу, маму, сына, дочь.
Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

Пример ввода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка

Пример вывода:
Cat name is дедушка Вася, no mother, no father
Cat name is дедушка Вася, no mother, no father — вывод

Cat name is бабушка Мурка, no mother, no father
Cat name is бабушка Мурка, no mother, no father — вывод

Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is папа Котофей, no mother, father is дедушка Вася — вывод

Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is мама Василиса, mother is бабушка Мурка, no father — вывод

Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей — вывод

Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей — вывод
*/

public class Solution
{
public static void main(String[] args) throws IOException
{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

String gFN = reader.readLine();
Cat grandFName = new Cat(gFN);

String gMN = reader.readLine();
Cat grandMName = new Cat(gMN);

String fN = reader.readLine();
Cat fatherName = new Cat(fN, null, grandFName);

String motherName = reader.readLine();
Cat catMother = new Cat(motherName, grandMName, null);

String sN = reader.readLine();
Cat sonName = new Cat(sN, catMother, fatherName);

String daughterName = reader.readLine();
Cat catDaughter = new Cat(daughterName, catMother, fatherName);

System.out.println(grandFName);
System.out.println(grandMName);
System.out.println(fatherName);
System.out.println(catMother);
System.out.println(sonName);
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 = mother;
this.mother = father;
}

@Override
public String toString()
{
if ((father == null) && (mother == null))
return «Cat name is » + name + ", no mother, " + «no father»;
if (father == null)
return «Cat name is » + name + ", mother is " + mother.name + ", no father";
if (mother == null)
return «Cat name is » + name + ", no mother" + ", father is " + father.name;
else
return «Cat name is » + name + ", mother is " + mother.name + ", father is " + father.name;
}
}
}
результат вывода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей

Process finished with exit code 0
  • ,

level06.lesson11.bonus02. Помогите кто нибудь!

/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама. Создать класс, который бы описывал данную ситуацию. Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.
Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама. Изменить класс Cat так, чтобы он мог описать данную ситуацию.
Создать 6 объектов: дедушку(папин папа), бабушку(мамина мама), папу, маму, сына, дочь.
Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

Пример ввода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка

Пример вывода:
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
*/

public class Solution
{
    public static void main(String[] args) throws IOException
    {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));


        String granFatherName = reader.readLine();
        Cat granFather = new Cat(granFatherName, null, null);

        String granMotherName = reader.readLine();
        Cat granMother = new Cat(granMotherName, null, null);

        String fatherName = reader.readLine();
        Cat catFather = new Cat(fatherName, null, granFather);

        String motherName = reader.readLine();
        Cat catMother = new Cat(motherName, granMother, null);

        String daughterName = reader.readLine();
        Cat catDaughter = new Cat(daughterName, catMother, catFather);

        String sonName = reader.readLine();
        Cat catSon = new Cat(sonName, catMother, catFather);


        System.out.println(granFather);
        System.out.println(granMother);
        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 catMother;
        private Cat catFather;



        Cat(String name, Cat catMother, Cat catFather)
        {
            this.name = name;
            this.catFather = catFather;
            this.catMother = catMother;
        }

        @Override
        public String toString()
        {
            String text = "Cat name is " + name;
            if(catMother != null){text+= ", mother is " + catMother.name;}
            else {text+= ", no mother";}
            if(catFather != null){text+= ", father is " + catFather.name;}
            else {text+= ", no father";}

            return text;
        }
    }

}


Ребят, помогите кто нибудь пожалуйста. Все работает, но не проходит тестирование на сервере.

Вводит ли в заблуждение пример вывод в задаче level06.lesson11.bonus02 ?

Напомню задачу:

/* Нужно добавить в программу новую функциональность

Вывести их всех на экран в порядке: дедушка, бабушка,папа, мама, сын, дочь.
_____________
Пример вывода:

Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
  • ,

Семья котов, обсуждение (level06.lesson11.bonus02)

Перечитал кучу веток, всё перепробовал, но сам так и не решил.

Прошу помощи разобраться.
Итак, разберем текст задания (курсив — мои мысли):

/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама.
Создать класс, который бы описывал данную ситуацию.
Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.

Это задание решено изначально — игнорируем.

Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама.
Изменить класс Cat так, чтобы он мог описать данную ситуацию.

Добавляем поле класса типа Cat для кошки-папы. Где-то в ветке
было указание, что сначала должен следовать папа, затем мама.
(1) Разве имеет значение порядок следования полей в объявлении класса?


Создать 6 объектов: маму, папу, сына, дочь, бабушку(мамина мама) и дедушку(папин папа).

Формально подвох может быть здесь, т. к. порядок создания объектов не соответствует
порядку ввода имен с клавиатуры. Однако, мне засчитали задание с созданием объектов
в порядке ввода, правда с использованием массива:


for (int i = 0; i < amountOfCatsToCreate; i++)
{NamesArray[i] = reader.readLine();}
Cat grandCatMale = new Cat(NamesArray[0]);
Cat grandCatFemale = new Cat(NamesArray[1]);


Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

(2) Здесь была у кого-то версия, что последнюю дочь надо выводить через print вместо println.
Не подтвердилось, но может ли реально быть такая задача и как на глаз определить
чем следует выводить последнюю строку?


Конец разбора текста задачи.
Что я упустил, на что не обратил внимание?

Насчет конструкторов.

(3)Зачем требуется создавать конструктор только с именем,
почему нельзя использовать Cat(«дедушка Вася», null, null)?


(4)Постоянно твердят про порядок мамы папы в конструкторе,
но разве есть разница между:


new Cat("папа Котофей", catGrandFather, null)
Cat(name, father, mother)


и

new Cat("папа Котофей", null, catGrandFather)
Cat(name, mother, father)


Кто может помочь, подсказать и имеет желание принять участие в обсуждении?
Не хочется двигаться дальше оставляя белые пятна.
Заранее благодарю неравнодушных. :)
  • ,

level06.lesson11.bonus02 не проходит тестирование.

Доброе время суток, программа не проходит тестирование, что только не перепробывал, но ничего не помогает.
Код программы.
package com.javarush.test.level06.lesson11.bonus02;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама. Создать класс, который бы описывал данную ситуацию. Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.
Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама. Изменить класс Cat так, чтобы он мог описать данную ситуацию.
Создать 6 объектов: маму, папу, сына, дочь, бабушку(мамина мама) и дедушку(папин папа).
Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

Пример ввода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка

Пример вывода:
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
*/

public class Solution
{
    public static void main(String[] args) throws IOException
    {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        String grandpaName = reader.readLine();
        Cat catGrandpa = new Cat(grandpaName, null, null);

        String grandmaName = reader.readLine();
        Cat catGrandma = new Cat(grandmaName, null, null);

        String fatherName = reader.readLine();
        Cat catFather = new Cat(fatherName, catGrandpa, null);

        String motherName = reader.readLine();
        Cat catMother = new Cat( motherName, null, catGrandma);

        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(catGrandpa);
        System.out.println(catGrandma);
        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, Cat father, Cat mother)
        {
            this.name = name;
            this.father = father;
            this.mother = mother;
        }



        @Override
        public String toString()
        {
            if (mother == null){
                if (father == null)
                    return "Cat name is " + name + ", no mother, " + "no father" ;
                else
                    return "Cat name is " + name + ", no mother, father is" + father.name;
            }
            else{
                if (father == null)
                    return "Cat name is " + name + ", mother is" + mother.name + ", no father" ;
                else
                    return "Cat name is " + name + ", mother is" + mother.name + ", father is " + father.name;
            }
        }
    }
}
  • ,

level06.lesson11.bonus02 - вывод корректный, но сервер не принимает

Заимплементировал задачу, но сервер не принимает. Я так понимаю для сервера нужно, чтобы конструктор у меня был реализован по другому, кто может подсказать? Чужие решения пересмотрел, не помогло. Подскажите кто может, в чем проблема моей имплементации:

package com.javarush.test.level06.lesson11.bonus02;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама. Создать класс, который бы описывал данную ситуацию. Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.
Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама. Изменить класс Cat так, чтобы он мог описать данную ситуацию.
Создать 6 объектов: маму, папу, сына, дочь, бабушку(мамина мама) и дедушку(папин папа).
Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

Пример ввода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка

Пример вывода:
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
*/

public class Solution
{
    public static void main(String[] args) throws IOException
    {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        String grandpaName = reader.readLine();
        Cat catGrandpa = new Cat(grandpaName, null, null);

        String grandmaName = reader.readLine();
        Cat catGrandma = new Cat(grandmaName, null, null);

        String fatherName = reader.readLine();
        Cat catFather = new Cat(fatherName, catGrandpa, null);

        String motherName = reader.readLine();
        Cat catMother = new Cat(motherName, null, catGrandma);

        String daughterName = reader.readLine();
        Cat catDaughter = new Cat(daughterName, catFather, catMother);

        String sonName = reader.readLine();
        Cat catSon = new Cat(sonName, catFather, catMother);

        System.out.println(catGrandpa);
        System.out.println(catGrandma);
        System.out.println(catFather);
        System.out.println(catMother);
        System.out.println(catDaughter);
        System.out.println(catSon);
    }

    public static class Cat
    {
        private String name;
        private Cat parentF;
        private Cat parentM;


        Cat(String name, Cat parentF, Cat parentM)
        {
            this.name = name;
            this.parentF = parentF;
            this.parentM = parentM;
        }

    @Override
    public String toString()
    {
        String s="Cat name is " + name + ", ";
        if (parentM == null)
            s += "no mother, ";
        else
            s += "mother is " + parentM.name + ", ";
        if (parentF == null)
            s += "no father";
        else
            s += "father is " + parentF.name;
        return s;
    }
}

}


Вот выдача:

дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
  • ,

помогите пожалуйста , работает ок но не проходит тестирование (level06.lesson11.bonus02)

/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама. Создать класс, который бы описывал данную ситуацию.
Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.
Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама.
Изменить класс Cat так, чтобы он мог описать данную ситуацию.
Создать 6 объектов: маму, папу, сына, дочь, бабушку(мамина мама) и дедушку(папин папа).
Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

Пример ввода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка

Пример вывода:
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
*/

public class Solution
{
public static void main(String[] args) throws IOException
{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

String grandpaName = reader.readLine();
Cat catGrandpa = new Cat(grandpaName);

String grandmaName = reader.readLine();
Cat catGrandma = new Cat (grandmaName);

String fatherName = reader.readLine();
Cat catFather = new Cat (fatherName, null ,catGrandpa);

String motherName = reader.readLine();
Cat catMother = new Cat(motherName, catGrandma, null);

String sonName = reader.readLine();
Cat catSon = new Cat (sonName, catMother, catFather);

String daughterName = reader.readLine();
Cat catDaughter = new Cat(daughterName, catMother, catFather);

System.out.println(catGrandpa);
System.out.println(catGrandma);
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 mat;
private Cat batya;

Cat(String name)
{
this.name = name;
}

Cat(String name, Cat mat, Cat batya)
{
this.name = name;
this.mat = mat;
this.batya = batya;
}

@Override
public String toString()
{
if (mat == null && batya != null){
return «Cat name is » + name + ", no mother, father is " + batya.name;}
if (mat != null && batya == null){
return «Cat name is » + name + ", mother is " + mat.name +", no father";}
else if (mat != null && batya != null ){
return «Cat name is » + name + ", mother is " + mat.name + ", father is " + batya.name;}
else {
return «Cat name is » + name + ", no mother, no father";}
}
}

}
  • ,

level06.lesson11.bonus02

Подскажите, пожалуйста, в чем проблема. Все темы уже перечитал, вроде все косяки исправил, но тестирование не проходит. Из принципа уже хочется решить.

package com.javarush.test.level06.lesson11.bonus02;

import java.io.IOException;

/* Нужно добавить в программу новую функциональность
Задача: У каждой кошки есть имя и кошка-мама. Создать класс, который бы описывал данную ситуацию. Создать два объекта: кошку-дочь и кошку-маму. Вывести их на экран.
Новая задача: У каждой кошки есть имя, кошка-папа и кошка-мама. Изменить класс Cat так, чтобы он мог описать данную ситуацию.
Создать 6 объектов: маму, папу, сына, дочь, бабушку(мамина мама) и дедушку(папин папа).
Вывести их всех на экран в порядке: дедушка, бабушка, папа, мама, сын, дочь.

Пример ввода:
дедушка Вася
бабушка Мурка
папа Котофей
мама Василиса
сын Мурчик
дочь Пушинка

Пример вывода:
Cat name is дедушка Вася, no mother, no father
Cat name is бабушка Мурка, no mother, no father
Cat name is папа Котофей, no mother, father is дедушка Вася
Cat name is мама Василиса, mother is бабушка Мурка, no father
Cat name is сын Мурчик, mother is мама Василиса, father is папа Котофей
Cat name is дочь Пушинка, mother is мама Василиса, father is папа Котофей
*/

public class Solution
{
    public static void main(String[] args) throws IOException
    {
        Cat catGrandfather = new Cat("дедушка Вася", null, null);
        Cat catGrandmother = new Cat("бабушка Мурка", null, null);
        Cat catFather = new Cat("папа Котофей", catGrandfather, null);
        Cat catMother = new Cat("мама Василиса", null, catGrandmother);
        Cat catSon = new Cat("сын Мурчик", catFather, catMother);
        Cat catDaughter = new Cat("дочь Пушинка", 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, Cat father, Cat mother)
        {
            this.name = name;
            this.father = father;
            this.mother = mother;
        }

        @Override
        public String toString()
        {
            if (father == null && mother == null)
            {
                return "Cat name is " + name + ", no mother" + ", no father";
            }
            else if (mother == null)
            {
                return "Cat name is " + name + ", no mother" + ", father is " + father.name;
            }
            else if (father == null)
            {
                return "Cat name is " + name + ", mother is " + mother.name + ", no father";
            }
            else
            {
                return "Cat name is " + name + ", mother is " + mother.name + ", father is " + father.name;
            }
        }
    }

}