Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.08.2013, 13:27   #1
vova_makarovych
Пользователь
 
Регистрация: 22.09.2010
Сообщений: 13
По умолчанию Java: Нужно найти количество, max, min

Задание: Я заполняю клас Ферма 100 жывотными .Нужно найти количество каждого типу зверей и max, min типов этих зверей

У меня есть Ферма
PHP код:
import java.util.ArrayList;
 
public class 
Farm 
{
    public 
Farm()
    {
         
arrayList = new ArrayList<Animal>();
    }    
    
    public 
void addAnimal(Animal animal
    {
        
arrayList.add(animal);
    }
    
    public 
void removeAnimal(int index)
    {
        
arrayList.remove(index);
    }
    
    public 
Animal getAnimal(int index
    {
        return 
arrayList.get(index);
    }
    
    public 
int getAnimalCount()
    {
        return 
arrayList.size();
    }
    
    private 
ArrayList<AnimalarrayList;

В которой есть жывотные(я только коровы выкладаю, есть еще 5 жывотных)
PHP код:
public class Cow implements Animal
{
    

    @
Override
    
public AnimalType getType()
    {
        return 
AnimalType.COW;
    }
    
    @
Override 
    
public float getBreakfastFoodAmount()
    {
        return 
2.6f;
    }
    
    @
Override
    
public float getLunchFoodAmount()
    {
        return 
7.1f;
    }
    
    @
Override
    
public float getDinnerFoodAmount()
    {
        return 
2.7f;
    }

    @
Override
    
public String getDescription() 
    {
        return 
"Cow";
    }
    

есть клас Animal
PHP код:
public interface Animal 
{
    
AnimalType getType();
    
float getBreakfastFoodAmount();
    
float getLunchFoodAmount();
    
float getDinnerFoodAmount();
    
String getDescription();

AnimalFactory
PHP код:
public class AnimalFactory 
{
    public 
Animal create(AnimalType type)
    {
        
Animal animal null;
        if (
type == AnimalType.DOG)
        {
            
animal = new Dog();
        }
        else if (
type ==AnimalType.HEN)
        {
            
animal = new Hen();
        }
        else if (
type == AnimalType.PIG)
        {
            
animal = new Pig();
        }
        else if (
type == AnimalType.GOAT)
        {
            
animal = new Goat();
        }
        else if (
type == AnimalType.COW
        {
            
animal = new Cow();
        }
        else if (
type == AnimalType.DUCK)
        {
            
animal = new Duck();
        }
        return 
animal;
    }

AnimalType
PHP код:
public enum AnimalType 
{
    
DOG,
    
COW,
    
DUCK,
    
GOAT,
    
HEN,
    
PIG
}; 
FarmAplication, сдесь я наполяню ферму и сдесь мне нужно найти количесто,мак и мин
PHP код:
import java.util.Random
public class 
FarmApplication
{
public static final 
int COUNT_ANIMAL 100;
        public static 
void main(String[] args)
        {
           
          
            
Farm farm = new Farm();
            
AnimalFactory factory = new AnimalFactory();
            
Random random = new Random();
            
AnimalType[] animalTypes AnimalType.values();
            
int randomMax animalTypes.length;

            for (
int index 0index COUNT_ANIMAL; ++index)
            {
                
AnimalType animalType animalTypes[random.nextInt(randomMax)];
                
farm.addAnimal(factory.create(animalType));
                

            }
            
           for (
int index 0index farm.getAnimalCount(); ++index)
            {
                
Animal animal farm.getAnimal(index);
                
System.out.println((index 1) + ". " animal.getDescription());
            }
            
             
             
int number 0
             
int min 0;
             
int max 0;

             for (
int index 0index <farm.getAnimalCount(); ++index
             {
             
number number 1;
            
            if (
min > ) {
                
min = array[i];
            }
            
            if (
max < array[i]) {
                
max = array[i];
            }
              }
         
            
                  
                    
        }

Я начал делать но незнаю как , подскажите как сделать
vova_makarovych вне форума Ответить с цитированием
Старый 01.08.2013, 15:41   #2
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

А в школе уже не учат что ЖИ,ШИ пиши с буквой И

И как то странно задача звучит.
Вот ферма, на ней 100 животных:
10 хорьков, 30 собак, 40 коров, 20 свиней.

И что тут есть минимум и максимум для каждого типа?

Хм... или вам нужно найти тип животных которых меньше(больше) всего на ферме?
Ну так по логике то все просто.
Создаете массив равный количеству классов.
Пробегаете по всем животным на ферме, и прибавляете на 1 определенный элемент массива.
После всего смотрите минимум в массиве и максимум, сопоставляете их с типами и вот вам решение.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.

Последний раз редактировалось WorldMaster; 01.08.2013 в 15:45.
WorldMaster вне форума Ответить с цитированием
Старый 01.08.2013, 16:17   #3
vova_makarovych
Пользователь
 
Регистрация: 22.09.2010
Сообщений: 13
По умолчанию

Цитата:
Сообщение от WorldMaster Посмотреть сообщение


Хм... или вам нужно найти тип животных которых меньше(больше) всего на ферме?
Да именно
ето мне и нужно найти. Я пробывал через масив но невыходит
vova_makarovych вне форума Ответить с цитированием
Старый 01.08.2013, 18:21   #4
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

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

Вот вам на псевдокоде:
Для всех животных на ферме
{
Ищем в массиве пару по ключу текущего типа животного
если нашли - увеличиваем счетчик +1
иначе создаем новую пару с именем типа и счетчиком в 1.
переходим к следующему животному.
}
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
найти max и min в стеке shilovec5377 Общие вопросы C/C++ 3 25.06.2013 09:46
списке целых чисел все элементы между max и min заменить полусуммой max и min Roman one C/C++ Базы данных 0 20.12.2012 12:14
Найти max,min среди нечетных Korvax Помощь студентам 1 24.04.2012 15:26
Нужно найти MAX и MIN значения и вставить их в другую таблицу Владимир П. Microsoft Office Excel 1 20.09.2011 20:35
найти min max в массиве lubafffka Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 08.06.2011 15:48