четверг, 29 декабря 2016 г.

Задачи по Java. Часть 2

ГЛАВА 2. КЛАССЫ


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


1.1). Student: id, Фамилия, Имя, Отчество, Дата рождения, Адрес,
Телефон, Факультет, Курс, Группа.
Создать массив объектов. Вывести:
a) список студентов заданного факультета;
b) списки студентов для каждого факультета и курса;
c) список студентов, родившихся после заданного года;
d) список учебной группы.
1.2). Patient: id, Фамилия, Имя, Отчество, Адрес, Телефон, Номер
медицинской карты, Диагноз.
Создать массив объектов. Вывести:
a) список пациентов, имеющих данный диагноз;
b) список пациентов, номер медицинской карты у которых находится в
заданном интервале.
1.3). Abiturient: id, Фамилия, Имя, Отчество, Адрес, Телефон, Оценки.
Создать массив объектов. Вывести:
a) список абитуриентов, имеющих неудовлетворительные оценки;
b) список абитуриентов, средний балл у которых выше заданного;
c) выбрать заданное число n абитуриентов, имеющих самый высокий
средний балл (вывести также полный список абитуриентов, имеющих
полупроходной балл).
1.4). House: id, Номер квартиры, Площадь, Этаж, Количество комнат,
Улица, Тип здания, Срок эксплуатации.
Создать массив объектов. Вывести:
a) список квартир, имеющих заданное число комнат;
b) список квартир, имеющих заданное число комнат и расположенных на
этаже, который находится в заданном промежутке;
c) список квартир, имеющих площадь, превосходящую заданную.
1.5). Car: id, Марка, Модель, Год выпуска, Цвет, Цена,
Регистрационный номер.
Создать массив объектов. Вывести:
a) список автомобилей заданной марки;
b) список автомобилей заданной модели, которые эксплуатируются
больше n лет;
c) список автомобилей заданного года выпуска, цена которых больше
указанной.


2). Разработать класс Круг, имеющий три поля. Одно поле будет
хранить значение радиуса. Два других координаты центра. Конструктор без
параметров, конструктор с 1 параметром – радиус, конструктор с двумя
160параметрами – координаты центра, конструктор с 3 параметрами – все три
поля. Написать метод выводящий все характеристики круга. Написать метод
изменяющий координаты центра(передаются параметры указывающие на
сколько нужно изменить координаты центра). Написать метод для изменения
радиуса круга. Написать метод для расчета площади круга и метод для
расчета длины окружности.

3). Разработать класс Склад. Два поля: количество единиц товара и
стоимость 1 единицы. Конструктор пустой и конструктор с двумя
параметрами. Написать метод позволяющий изменять количество товара.
Написать метод позволяющий изменять стоимость товара. Написать метод
позволяющий
рассчитывать стоимость товара.
Написать метод для
сравнения стоимости товаров. Написать метод с переменным числом
параметров определяющий общее количество товаров.

4). Разработать класс Книга. Поля – автор, название, год выпуска,
количество страниц. Конструктор пустой и конструктор с 4 параметрами.
Написать методы, позволяющие менять каждое из полей. Метод, который по
названию книги, будет выводить всю информацию о книге. Перегрузить
методы по изменению полей, так чтобы новое значение поля можно было
вводить с клавиатуры.

5). Определить класс Дробь в виде пары (m,n). Класс должен содержать
несколько конструкторов. Реализовать методы для сложения, вычитания,
умножения, деления и сокращения дробей. Методы сумма и произведение
сделать с переменным числом параметров. Объявить массив из k дробей,
ввести/вывести значения для массива дробей. Создать массив объектов и
передать его в метод, который изменяет каждый элемент массива с четным
индексом путем добавления следующего за ним элемента массива.

6). Определить класс Вектор размерности n. Реализовать методы
сложения, вычитания, умножения, инкремента, декремента, индексирования.
Определить массив из m объектов. Каждую из пар векторов передать в методы,
возвращающие их скалярное произведение и длины. Вычислить и вывести
углы между векторами.

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

8). Определить класс Квадратное уравнение. Класс должен содержать
несколько конструкторов. Реализовать методы для поиска корней,
экстремумов, а также интервалов убывания/возрастания. Создать массив
объектов и определить наибольшие и наименьшие по значению корни.

Комментариев нет:

Отправить комментарий