Дорогие форумчане! Если не сложно, подскажите почему не принимает. Вроде все проверил (неоднократно) и перепроверил (многократно). Код работает, но не принимается. =(

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 granpaName = reader.readLine();
    Cat granpa = new Cat(granpaName, null, null);

    String granmaName = reader.readLine();
    Cat granma = new Cat(granmaName, null, null);

    String paName =reader.readLine();
    Cat pa = new Cat(paName, granpa, null);

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

    String sonName = reader.readLine();
    Cat son = new Cat(sonName, pa, catMother);

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

    System.out.println(granpa);
    System.out.println(granma);
    System.out.println(pa);
    System.out.println(catMother);
    System.out.println(son);
    System.out.println(catDaughter);
}

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

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

    @Override
    public String toString()
    {
        if (father == null)
        {
            if (mother == null)
                return "Cat name is " + name + ", no mother" + ", no father";
            else
                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;
        }
    }
}

}

задан 14 Окт '16, 17:14

Jakobs0881's gravatar image

Jakobs0881
1
одобрено: 0%

закрыто 13 Сен, 13:30

AndyRad's gravatar image

AndyRad
13.1k29

Вопрос был закрыт по следующей причине: "Problem is not reproducible or outdated" AndyRad 13 Сен, 13:30


Код у вас вроде рабочий.. Я помню тоже долго игрался с этой задачей и все никак не принимал задачу компилятор. В итоге этих "танцев с бубном" передалал код таким образом: - сооздал несколько конструкторов класа Кот (для разных типов родителей) и при создании разних обьектов использовал разные конструкторы, ну и конечно же от этого изменились условия метода toString.

В чем была проблема так и не понял...

ссылка

опубликован 14 Окт '16, 18:15

buttluk's gravatar image

buttluk
7687
одобрено: 38%

  1. Попробуйте добавить конструктор Cat(String), использовав его для бабушки и дедушки.
  2. toString() кажется избыточным, можно попробовать его упростить.
ссылка

опубликован 14 Окт '16, 18:18

IlyaS's gravatar image

IlyaS
262
одобрено: 16%

Следить за вопросом

По Email:

После авторизации вы сможете подписаться на любые обновления здесь

Основы Markdown

  • *italic* or _italic_
  • **bold** or __bold__
  • ссылка:[текст](http://url.com/ "заголовок")
  • изображение?![alt текст](/path/img.jpg "заголовок")
  • нумерованный список: 1. Foo 2. Bar
  • Для того чтобы добавить разрыв строки просто добавьте два пробела.
  • основные HTML тэги, также поддерживаются

Тэги:

×677
×337
×300

Задан: 14 Окт '16, 17:14

Просмотров: 232 раз

Отредактирован: 13 Сен, 13:30