Skip to content

JavaFourthCourse/SecondProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SecondProject

Указание: Решить как минимум 3 любых задания из ниже перечисленных. Цель этой работы научится создавать и проектировать классы со структурой произвольной сложности из РАЗЛИЧНЫХ ПРЕДМЕТНЫХ ОБЛАСТЕЙ - изюминка - в процессе решения задач вам возможно придеться РАЗОБРАТЬСЯ САМИМ с предметными областями ПЕРЕД СОСТАВЛЕНИЕМ (ПРОЕКТИРОВАНИЕМ) КЛАССОВ -именно!! не в процессе проектирования а ПЕРЕД ним, до того как вы начнете проектировать структуру классов и тем более программировать ее. ВНИМАНИЕ!! разбираться в предметных областях нужно лишь в той степени, которя НЕОБХОДИМА для решения задач.

  1. Создать классы, спецификации которых приведены ниже. Определить кон- структоры и методы setТип(), getТип(), toString(). Определить дополнительно методы в классе, создающем массив объектов. Задать критерий выбора данных и вывести эти данные на консоль. В каждом классе, обладающем информацией, должно быть объявлено несколько конструкторов:

Поезд: Пункт назначения, Номер поезда, Время отправления, Число мест (общих, купе, плацкарт, люкс - вид посадочных мест задать перечислением). Создать массив объектов. Вывести: a) список поездов, следующих до заданного пункта назначения; b) список поездов, следующих до заданного пункта назначения и отправ- ляющихся после заданного часа; c) список поездов, отправляющихся до заданного пункта назначения и имеющих общие места.

  1. Определить класс Точка на плоскости (в пространстве) и во времени. Задать движение точки в определенном направлении (по прямой) заданном еденичным вектором закон движения считать квадратичным (S(t) = At^2+Bt+C здесь A B C - некоторые заданные вещественные числа которые определяют КОНКРЕТНЫЙ закон движения - изменение пройденного вдоль прямой пути S от времени t). Создать методы по определению скорости и ускорения точки. Проверить для двух точек возможность пересечения траекторий. Определить расстояние между дву- мя точками в заданный момент времени.

  2. Определить класс Вектор. Реализовать методы для вычисления модуля вектора, скалярного произведения, сложения, вычитания, умножения на константу. Объявить массив векторов. Написать метод, который для за- данной пары векторов будет определять, являются ли они коллинеарными или ортогональными.

  3. Определить класс Множество символов. Реализовать методы для опре- деления принадлежности заданного элемента множеству; пересечения, объединения, разности двух множеств. Создать методы сложения, вычи- тания, умножения (пересечения), индексирования, присваивания. Создать массив объектов и передавать пары объектов в метод другого класса, ко- торый строит множество, состоящее из элементов, входящих только в одно из заданных множеств.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages