Задания по вариантам:
Создать компонент CDI, выполняющий сортировку коллекции различными способами. Выбор способа сортировки должен быть реализован через указание соответствующей аннотации или посредством указания класса сортировки в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий решение квадратного уравнения различными способами (с определением дискриминанта, по теореме Виета). Выбор способа решения должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение НОД различными способами (алгоритм Евклида, с помощью разложения чисел на простые множители). Выбор способа нахождения НОД должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение площади треугольника различными способами (по высоте и стороне, по длинам двух сторон треугольника a,b и величины угла γ между ними, по формуле Герона и т.п.). Выбор способа нахождение площади треугольника должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение ранга матрицы различными способами (по определению, методом окаймляющих миноров, по методу Гаусса). Выбор способа нахождение ранга матрицы должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий решения систем уравнений с двумя неизвестными различными способами (подстановкой, сложением). Выбор способа решения должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение НОК различными способами (нахождение кратного, одинакового для обоих чисел, с помощью разложения чисел на простые множители). Выбор способа нахождения НОК должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение высоты треугольника различными способами (по основанию и площади, с помощью углов и сторон и т.п.). Выбор способа нахождение высоты треугольника должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий расчёт по заданной формуле комбинаторики (размещение без повторений из n элементов по k, размещение с повторениями из n элементов по k, перестановка без повторений из n элементов, перестановка с повторениями, сочетание без повторений из n элементов по k, сочетание с повторениями из n элементов по k.). Выбор формулы должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение среднего значения множества чисел различными способами (арифметическое, геометрическое, гармоническое, медиану). Выбор способа нахождение среднего значения должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение гипотенузы треугольника различными способами (по катетам, по катету и углу). Выбор способа нахождение гипотенузы треугольника должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение тангенса угла различными способами (по синусу и косинусу, только по косинусу). Выбор способа нахождение тангенса угла должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Задание, проиллюстрированное в примере:
Создать компонент CDI, выполняющий сортировку коллекции различными способами. Выбор способа сортировки должен быть реализован через указание соответствующей аннотации или посредством указания класса сортировки в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Задания по вариантам:
Создать компонент CDI, выполняющий решение квадратного уравнения различными способами (с определением дискриминанта, по теореме Виета). Выбор способа решения должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение НОД различными способами (алгоритм Евклида, с помощью разложения чисел на простые множители). Выбор способа нахождения НОД должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение площади треугольника различными способами (по высоте и стороне, по длинам двух сторон треугольника a,b и величины угла γ между ними, по формуле Герона и т.п.). Выбор способа нахождение площади треугольника должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение ранга матрицы различными способами (по определению, методом окаймляющих миноров, по методу Гаусса). Выбор способа нахождение ранга матрицы должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий решения систем уравнений с двумя неизвестными различными способами (подстановкой, сложением). Выбор способа решения должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение НОК различными способами (нахождение кратного, одинакового для обоих чисел, с помощью разложения чисел на простые множители). Выбор способа нахождения НОК должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение высоты треугольника различными способами (по основанию и площади, с помощью углов и сторон и т.п.). Выбор способа нахождение высоты треугольника должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий расчёт по заданной формуле комбинаторики (размещение без повторений из n элементов по k, размещение с повторениями из n элементов по k, перестановка без повторений из n элементов, перестановка с повторениями, сочетание без повторений из n элементов по k, сочетание с повторениями из n элементов по k.). Выбор формулы должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение среднего значения множества чисел различными способами (арифметическое, геометрическое, гармоническое, медиану). Выбор способа нахождение среднего значения должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение гипотенузы треугольника различными способами (по катетам, по катету и углу). Выбор способа нахождение гипотенузы треугольника должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий нахождение тангенса угла различными способами (по синусу и косинусу, только по косинусу). Выбор способа нахождение тангенса угла должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий загрузку данных из различных типов файлов: XML, JSON, YAML. Выбор способа загрузки данных должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести логирование чтения данных.
Создать компонент CDI, выполняющий сохранение данных в различных типах файлов: XML, JSON, YAML. Выбор способа сохранения данных должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести логирование записи данных.
Создать компонент CDI, выполняющий преобразование чисел из десятичной системы счисления в различные: шестнадцатеричную, двоичную, восьмеричную. Выбор способа сохранения данных должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести логирование преобразования чисел.
Создать компонент CDI, выполняющий хранение данных в различных видах коллекций: связанный список, динамический массив, набор (set). Выбор способа хранения данных должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести логирование преобразования чисел.
Создать компонент CDI, выполняющий округления числа различными способами: до ближайшего целого, до большего целого, до меньшего целого. Выбор способа округления должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести логирование округления чисел.
Создать компонент CDI, выполняющий нахождение кратчайшего пути на графе различными способами (Алгоритм Флойда-Уоршелла, Алгоритм Форда-Беллмана, Алгоритм Дейкстры.). Выбор способа нахождение кратчайшего пути на графе должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий перевод слов с русского языка на другие языки. Выбор языков должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести логирование.
Создать компонент CDI, выполняющий шифрование текста различными способами (шифр Цезаря, шифр Виженера, шифр Бэкона). Выбор способа шифрования должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести сравнение по времени эффективности различных методов.
Создать компонент CDI, выполняющий удаление элемента из списка различными способами (из начала, с конца, из произвольного места). Выбор способа удаления должен быть реализован через указание соответствующей аннотации или посредством указания класса в XML файле. Посредством перехватчиков провести логирование.