Skip to content

KissLinkA-205/EPAM-Labs

Repository files navigation

🎓 Java Web Development
EPAM Systems
Minsk, Belarus (Минск, Беларусь)
March 2021

EN: All copyrights to the laboratory conditions provided below belong to the company EPAM
RU: Все авторские права на предоставленные ниже условия лабораторных работ принадлежат компании EPAM


📘 Java Fundamentals

  • EN: Laboratory work №1
    RU: Лабораторная работа №1
    Tasks (Задачи) Общие требования к коду задач:
    • При написании приложений обязательно используйте Java Code Convention.
    • Не размещайте код всего приложения в одном методе (даже если задача вам кажется маленькой и “там же нечего писать”).
    • Обязательно используйте пакеты.
    • Именуйте переменные, методы, класс и прочее так, чтобы можно было понять назначение элемента. Не используйте сокращений, только если это не общепринятые сокращения.
    Написать программу, позволяющую по последней цифре числа определить последнюю цифру его квадрата. Составить программу, которая по заданным году и номеру месяца определяет количество дней в этом месяце и корректно определялись все високосные года. Окружность вписана в квадрат заданной площади. Найти площадь квадрата, вписанного в эту окружность. Во сколько раз площадь вписанного квадрата меньше площади заданного? Составить программу, печатающую значение true, если указанное высказывание является истинным, и false — в противном случае: среди заданных целых чисел А, В, С, D есть хотя бы два четных. Составить программу, печатающую значение true, если указанное высказывание является истинным, и false — в противном случае: является ли целое число совершенным (сумма делителей равна самому числу). Идет n-я секунда суток, определить, сколько полных часов, полных минут и секунд прошло к этому моменту Даны две точки А(х1, у1) и В(х2, у2). Составить алгоритм, определяющий, которая из точек находится ближе к началу координат x, y. Вычислить значение функции.
    F(x)={-x^2+3x+6, если x >= 3; 1/(x^3-6), если x < 3} Вычислить длину окружности и площадь круга одного и того же заданного радиуса R. Составить программу для вычисления значений функции F(x) на отрезке [а, b] с шагом h. Результат представить в виде таблицы, первый столбец которой – значения аргумента, второй - соответствующие значения функции.
    F(x) = tg(x)
  • EN: Laboratory work №2
    RU: Лабораторная работа №2
    Task (Задача) Создать класс Мяч. Создать класс Корзина. Наполнить корзину мячиками. Определить вес мячиков в корзине и количество синих мячиков.
  • EN: Laboratory work №3
    RU: Лабораторная работа №3
    Tasks (Задачи) Создание типа Array, который является классом оболочкой над массивом целого типа. В данном типе должны быть реализованы конструкторы (позволяющие несколькими способами создавать объекты типа), get-ы, set-ы и переопределенные методы класса Object (toString(), equals(), hasCode()).

    Программа должна иметь следующие возможности:
    1 - Сортировать массив тримя способами.
    2 - Осуществлять поиск элемента массива (использовать алгоритм бинарного поиска).
    3 - Нахождение максимального и минимального элемента массива.
    4 - Получить все простые числа находящиеся в массиве.
    5 - Получить все числа Фибонначчи находящиеся в массиве.
    6 - Получить все трехзначные числа, в десятичной записи которых нет одинаковых цифр.
    7 - Заполнения элементов массива и с консоли, и с файла и с помощью генерации случайных чисел. Дан непрямоугольный целочисленный массив (jagged array). Реализовать алгоритм "пузырьковой" сортировки, таким образом, чтобы была возможность упорядочить строки матрицы:

    • в порядке возрастания (убывания) сумм элементов строк матрицы;
    • в порядке возрастания (убывания) максимальных элементов строк матрицы;
    • в порядке возрастания (убывания) минимальных элементов строк матрицы.
    Для сортировки методы класса Arrays не использовать! Основное требование избежать повтора кода!!!!!
  • EN: Laboratory work №4
    RU: Лабораторная работа №4
    Tasks (Задачи) Программа обработки текста, который может быть получен как с консоли, так и с файла. В каждом слове k-ю букву заменить заданным символом. Если k больше длины слова, корректировку не выполнять. В тексте после буквы Р, если она не последняя в слове, ошибочно напечатана буква А вместо О. Внести исправления в текст. В тексте слова заданной длины заменить указанной подстрокой, длина которой может не совпадать с длиной слова. Из небольшого текста удалить все символы, кроме пробелов, не являющиеся буквами. Между последовательностями подряд идущих букв оставить хотя бы один пробел. Из текста удалить все слова заданной длины, начинающиеся на согласную букву.
  • EN: Laboratory work №5
    RU: Лабораторная работа №5
    Tasks (Задачи) Задания необходимо выполнить с помощью командной строки и написать отчет. Создать класс Hello, который будет приветствовать любого пользователя при вводе его имени через командную строку. Создать приложение, которое отображает в окне консоли аргументы командной строки метода main() в обратном порядке. Создать приложение, выводящее заданное количество случайных чисел с переходом и без перехода на новую строку. Создать приложение для ввода пароля из командной строки и сравнения его со строкой-образцом. Создать программу ввода целых чисел как аргументов командной строки, подсчета их суммы (произведения) и вывода результата на консоль. Приложение, выводящее фамилию разработчика и за сколько дней готов выполнить задание. Необходимо рассчитать дату и время сдачи задания. Для получения даты и времени использовать класс Calendar из пакета java.util. Создать приложение, получающее дату рождения (день, месяц и год) и определяющее в какой день недели Вы родились, сколько Вам полных лет и поздравляет с днем рождения, если оно сегодня (использовать класс Calendar из пакета java.util).
  • EN: Laboratory work №6
    RU: Лабораторная работа №6
    Task (Задача) Авиакомпания. Определить иерархию самолетов. Создать авиакомпанию. Посчитать общую вместимость и грузоподъемность. Провести сортировку самолетов компании на основе одного и нескольких параметров. Найти самолет в компании, соответствующий заданному диапазону параметров потребления горючего.

📊 MySQL

🌍 Java web

  • EN: Laboratory work №8
    RU: Лабораторная работа №8
    Task (Задача) Создать xml-файл, хранящий информацию об объектах определенной предметной области. Для валидации полученного xml-файла необходимо разработать соответствующую ему схему xsd. Выполнить парсинг xml-документа с использованием DOM, SAX и StAX парсеров.
    Файл загружать в веб-приложение через страницу в браузере, на странице осуществлять выбор парсера. Результаты парсинга должны быть выведены в браузер в виде таблицы.

    Требования:

    • использовать для атрибутов required & optional
    • перечисления
    • шаблоны и предельные значения
    • использовать тип ID
    • задание значений атрибутов по умолчанию
    • расширение типов (имитация наследования)
    • использовать дату-время
    • создать в xml-документе не менее 16 сущностей
    • парсеры организовать с помощью шаблона Bilder
    • для записи логов использовать Log4J2
    • код должен быть покрыт тестами

    Компьюетры
    Компьютерные комплектующие имеют следующие характеристики:
    Name - название комплектующего.
    Origin - страна производства.
    Price - цена (0-n рублей).
    Type (должно быть несколько) - периферийное либо нет, энергопотребление (ватт), наличие кулера (есть либо нет), группа комплектующих (устройства ввода-вывода, мультимедийные), порты (COM, USB, LPT).
    Critical - критично ли наличие комплектующего для работы компьютера.
    Корневой элемент назвать Devices.