powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Написать меню позволяющее осуществить проверку всех методов класса
19 сообщений из 19, страница 1 из 1
Написать меню позволяющее осуществить проверку всех методов класса
    #38114858
zyxell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день! Прошу помочь новичку написать меню для программы:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
import java.util.*;
 
interface Operation<T> {
    public T operate(T value);
}
 
interface Sortable {
    public void sort();
}
 
interface Container<T extends Comparable<T>> extends Sortable {
    public Collection<T> getItems();
    public void setItems(Collection<T> items);
    public void foreach();
}
 
abstract class AbstractContainer<T extends Comparable<T>> implements Container<T>, Iterable<T> {
    private Collection<T> items;
    private Operation<T> operation;
 
    public AbstractContainer(Collection<T> items, Operation<T> operation) {
        this.items = items;
        this.operation = operation;
    }
 
    @Override
    public void foreach() {
        if (operation == null) return;
        Collection<T> result = new ArrayList<T>(items.size());
        for (T item : getItems()) {
            result.add(operation.operate(item));
        }
        setItems(result);
    }
 
    @Override
    public void setItems(Collection<T> items) {
        this.items = items;
    }
 
    @Override
    public Collection<T> getItems() {
        return items;
    }
 
    @Override
    public Iterator<T> iterator() {
        return items.iterator();
    }
 
    @Override
    public String toString() {
        return this.getClass().getCanonicalName() + "{" +
                "items=" + items +
                '}';
    }
}
 
class BubbleSortContainer<T extends Comparable<T>> extends AbstractContainer<T> {
    public BubbleSortContainer(Collection<T> items, Operation<T> operation) {
        super(items, operation);
    }
 
    @Override
    public void sort() {
        List<T> items = new ArrayList<T>(getItems());
        for (int i = 0; i < items.size() - 1; ++i)
            for (int j = i + 1; j < items.size(); ++j)
                if (items.get(i).compareTo(items.get(j)) > 0) {
                    T temporaryVariable = items.get(i);
                    items.set(i, items.get(j));
                    items.set(j, temporaryVariable);
                }
        setItems(items);
    }
}
 
class SelectionSortContainer<T extends Comparable<T>> extends AbstractContainer<T> {
    public SelectionSortContainer(Collection<T> items, Operation<T> operation) {
        super(items, operation);
    }
 
    @Override
    public void sort() {
        List<T> items = new ArrayList<T>(getItems());
        for (int i = 0; i < items.size() - 1; ++i) {
            int min = i;
            for (int j = i + 1; j < items.size(); ++j)
                if (items.get(min).compareTo(items.get(j)) > 0)
                    min = j;
            if (min != i) {
                T temporaryVariable = items.get(i);
                items.set(i, items.get(min));
                items.set(min, temporaryVariable);
            }
        }
        setItems(items);
    }
}
 
class DefaultSortContainer<T extends Comparable<T>> extends AbstractContainer<T> {
    public DefaultSortContainer(Collection<T> items, Operation<T> operation) {
        super(items, operation);
    }
 
    @Override
    public void sort() {
        List<T> items = new ArrayList<T>(getItems());
        Collections.sort(items);
        setItems(items);
    }
}
 
class SquareRootOperation implements Operation<Double> {
    @Override
    public Double operate(Double value) {
        return Math.sqrt(value);
    }
}
 
class LogarithmOperation implements Operation<Double> {
    @Override
    public Double operate(Double value) {
        return Math.log(value);
    }
}
 
public class Tutorial0006 {
    private static Random random = new Random();
 
    private static Collection<Double> getRandomList() {
        final int numberOfItems = 5 + random.nextInt(4);
        Collection<Double> items = new ArrayList<Double>(numberOfItems);
        for (int i = 0; i < numberOfItems; ++i)
            items.add(random.nextInt(10000) / 100.);
        return items;
    }
 
    private static <T extends Comparable<T>> Container<T> getRandomContainerImplementation(Collection<T> items,
        Operation<T> ... operations) {
        switch (random.nextInt(3)) {
            case 0: return new BubbleSortContainer<T>(items, operations[0]);
            case 1: return new SelectionSortContainer<T>(items, operations[1]);
        }
        return new DefaultSortContainer<T>(items, null);
    }
 
    public static void main(String[] args) {
        SquareRootOperation squareRootOperation = new SquareRootOperation();
        LogarithmOperation logarithmOperation = new LogarithmOperation();
        for (int i = 0; i < 10; ++i) {
            Container<Double> container = getRandomContainerImplementation(getRandomList(), squareRootOperation, logarithmOperation);
            System.out.println("Source:    " + container);
            container.sort();
            System.out.println("Sorted:    " + container);
            container.foreach();
            System.out.println("Foreached: " + container);
        }
    }
}

условие самой задачи:Создать абстрактный базовый класс Container c виртуальными методами sort() и поэлементной обработки контейнер foreach(). Разработать производные класс Bubble (пузарек) и Choice (выбор). В первом классе сортировка реализуется методом пузырька, а поэлементная обработка состоит в извлечении квадратного корня. Во втором классе сортировка реализуется методом выбора, а поэлементная обработка – вычисление логарифма.Программа должна содержать меню, позволяющее осуществить проверку всех методов класса. Реализовать задание разделив каждый класс на интерфейс и реализацию.
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38115030
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОК. А вопрос в чем?
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38115548
zyxell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

Нужно меню которое бы реализовывало два метода, т.е. вычисляла логорифм а др извлекала кв. корень
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38115583
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zyxellНужно меню которое бы реализовывало два метода, т.е. вычисляла логорифм а др извлекала кв. корень
Снова не вижу вопроса.
Такое меню?
http://docs.oracle.com/javase/tutorial/uiswing/components/menu.html
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38115720
zyxell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

Да, такое)
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38115732
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zyxellBlazkowicz,

Да, такое)
Ну, вот там по ссылке есть примеры.
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38115771
zyxell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

Я в Java полный 0, может все таки поможешь?
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38115780
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zyxellBlazkowicz,
Я в Java полный 0, может все таки поможешь?
Конечно. Я тут всем лабы делаю.
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38115801
zyxell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

Был бы очень признателен)
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38116260
zyxell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

А когда примерно сможешь сделать?
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38116285
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38116290
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zyxellА когда примерно сможешь сделать?
Это была ирония.
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38116291
zyxell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

А нафиг тогда было вообще отвечать?
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38116293
Nixic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
За 3 часа-то можно было по ссылочке и прочитать что-то, хотя бы поверхностно вникнуть :)
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38116294
Nixic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ой млин, какие 3 часа за СУТКИ!
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38116297
zyxell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nixic,

да я смотрю ты юморист, цель то и была попросить знающих людей помочь, если нечитал всю переписку повторюсь, в java полный 0, так что с программированием я неочень дружу, а вместо того чтобы ерничать лучшеб помог написать.
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38116301
Nixic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zyxellNixic,
да я смотрю ты юморист, цель то и была попросить знающих людей помочь, если нечитал всю переписку повторюсь, в java полный 0, так что с программированием я неочень дружу, а вместо того чтобы ерничать лучшеб помог написать.
Я тоже не разбираюсь в java, я менеджер.
Вам мягко намекают, что никто за вас писать никакие меню не будет. Потому что лентяев и халявщиков не любят нигде.
Вот если бы вы выложили код и сказали, что вот здесь у вас что-то не получается или выдается какая-то ошибка, то другое дело, здесь всегда помогут.
Это как на автомобильном форуме писать, что-то типа "Я не могу поменять колесо, не мог бы кто ко мне приехать и поменять его?"
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38116303
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zyxellА нафиг тогда было вообще отвечать?
Развлекаю себя как могу.
...
Рейтинг: 0 / 0
Написать меню позволяющее осуществить проверку всех методов класса
    #38116305
zyxell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nixic,

Сравнение твое про авто меня убило,шикарная аналогия) но про халявщиков все же я с тобой соглашусь, и все же менеджер мыслишь ты узковато, я никого здесь незаставляю и непринуждаю, если тут все такие мастера и им неохота тратить время на такие плевые задачки,ну и пусть, я жду студента какого нибудь кому будет интересна сама задача и чисто для практики готов написать код)
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Написать меню позволяющее осуществить проверку всех методов класса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]