Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП.doc
Скачиваний:
13
Добавлен:
01.04.2025
Размер:
1.99 Mб
Скачать

Задания для самостоятельного выполнения

  1. Разработать класс Integer для работы с целыми числами. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену класса. Кроме этого определить функцию-член, определяющую является ли целое число простым числом.

  1. Разработать класс Real для работы с вещественными числами. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену класса. Кроме этого определить функцию-член, сумму цифр целой и дробной части числа.

  1. Разработать класс Byte для работы с беззнаковыми целыми. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену класса. Кроме этого определить функцию-член класса, вычисляющую восьмеричный эквивалент беззнакового целого числа.

  1. Разработать класс Word для работы с беззнаковыми целыми. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену класса. Кроме этого определить логическую функцию-член класса, определяющую, является ли данное беззнаковое целое число палиндромом, то есть числом, которое читается слева направо и справа налево одинаково.

  2. Разработать класс String для работы со строками. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Кроме этого определить функцию-член, которая из двух строк создает третью строку, содержащую общие символы первой и второй строки без их дублирования.

  1. Разработать класс Date для работы с датами. Класс должен содержать основной конструктор, конструктор по умолчанию и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Кроме этого определить функцию-член TodayDate(), которая возвращает системную дату объекту класса Date.

  1. Разработать класс Time для работы с временными параметрами. Класс должен содержать основной конструктор, конструктор по умолчанию и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Кроме этого определить функцию-член TodayTime(), которая возвращает системное время объекту класса Time.

  1. Разработать класс Complex для работы с комплексными числами. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Кроме этого определить функции-члены класса, задающие основные арифметические операции с комплексными числами (сложение, вычитание, умножение и деление комплексных чисел). Выполнить все арифметические действия при помощи этих функций, отображая результат на экране дисплея.

  1. Разработать класс Point для работы с объектами типа точка на плоскости. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Кроме этого определить функцию-член класса, позволяющую вывести на экран дисплея координаты середины линии, соединяющей две заданные точки.

  2. Разработать класс Line для работы с объектами типа отрезок. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену класса. Создать функцию-член, определяющую возможность построения треугольника по трем отрезкам и вычислить площадь этого треугольника.

  1. Разработать класс String для работы со строками. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Кроме этого определить функцию-член, которая по двум данным строкам создает третью строку, являющейся конкатенацией исходных строк.

  1. Создать класс IntVector для работы с одномерными массивами (векторами) целых чисел. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену класса, определяющему размер массива. Дополнительно определить функцию-член этого класса, которая находит угол между двумя векторами, имеющими одинаковую размерность.

  1. Создать класс DoubleVector для работы с одномерными массивами (векторами) вещественных чисел. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену класса, определяющему размер массива. Дополнительно определить функцию-член этого класса, которая вычисляет векторное произведение двух исходных векторов. Исходные вектора должны быть третьего порядка.

  1. Создать класс Circle для работы с плоскими окружностями. В качестве члена данного задается длина радиуса окружности. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену этого класса. Дополнительно определить функцию-член этого класса, вычисляющую площадь круга.

  2. Разработать класс Rectangle для работы с плоскими прямоугольниками, стороны которого параллельны осям координат. В качестве членов-данных задать координаты двух точек прямоугольника (левую верхнюю точку и нижнюю правую). Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса, задающим координаты двух вершин прямоугольника. Дополнительно определить функцию-член этого класса, которая определяет площадь вписанного в исходный прямоугольник серединного четырехугольника (четырехугольника, получаемого в результате последовательного соединения середин сторон исходного прямоугольника).

  1. Разработать класс ThreeAngle для работы с плоскими треугольниками. В качестве членов-данных задаются координаты вершин треугольника. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, доступ к закрытым членам класса и логическую функцию, определяющую возможность построения треугольника. Дополнительно определить функцию-член этого класса, которая определяет принадлежность точки с заданными координатами треугольнику.

  1. Разработать класс ThreeAngle для работы с плоскими треугольниками. В качестве членов-данных задаются длины трех сторон треугольника. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, доступ к закрытым членам класса и логическую функцию, определяющую возможность построения треугольника. Дополнительно определить функцию-член этого класса, которая вычисляет площадь треугольника.

  1. Разработать класс ThreeAngle для работы с плоскими треугольниками. В качестве членов-данных задаются длины трех сторон треугольника. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, доступ к закрытым членам класса и логическую функцию, определяющую возможность построения треугольника. Дополнительно определить функцию-член этого класса, которая вычисляет длины всех высот треугольника.

  2. Разработать класс ThreeAngle для работы с плоскими треугольниками. В качестве членов-данных задаются длины трех сторон треугольника. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, доступ к закрытым членам класса и логическую функцию, определяющую возможность построения треугольника. Дополнительно определить функцию-член этого класса, которая вычисляет длины всех биссектрис треугольника.

  1. Разработать класс ThreeAngle для работы с плоскими треугольниками. В качестве членов-данных задаются длины трех сторон треугольника. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, доступ к закрытым членам класса и логическую функцию, определяющую возможность построения треугольника. Дополнительно определить функцию-член этого класса, которая вычисляет длины всех медиан треугольника.

  1. Разработать класс Line для работы с объектами типа отрезок. Члены-данные этого класса определяют координаты концов отрезка на плоскости. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, определяющую длину отрезка.

  1. Разработать класс Line для работы с объектами типа отрезок. Члены-данные этого класса определяют координаты концов отрезка на плоскости. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать логическую функцию-член класса, определяющую параллельность двух отрезков.

  1. Разработать класс Line для работы с объектами типа отрезок. Члены-данные этого класса определяют координаты концов отрезка на плоскости. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать логическую функцию-член класса, определяющую перпендикулярность двух отрезков.

  2. Создать класс Circle для работы с плоскими окружностями. В качестве члена данного задается длина радиуса окружности. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену этого класса. Дополнительно определить функцию-член этого класса, вычисляющую длину окружности.

  1. Создать класс Circle для работы с плоскими окружностями. В качестве члена данного задается длина радиуса окружности. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену этого класса. Дополнительно определить функцию-член этого класса, вычисляющую центральный угол для хорды, длина которой вводится с клавиатуры.

  1. Разработать класс Line для работы с объектами типа отрезок. Члены-данные этого класса определяют координаты концов отрезка на плоскости. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, определяющую координаты середины заданного отрезка.

  1. Разработать класс Polygon для работы с правильными замкнутыми многоугольниками. Члены-данные этого класса определяют число сторон многоугольника и длину стороны. Класс должен содержать конструктор по умолчанию, основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, которая вычисляет площадь многоугольника. Вывести полученное значение на экран дисплея.

  1. Разработать класс Sphere для работы с шаром. Единственный член-данное этого класса определяет радиус шара. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену класса. Описать функцию-член класса, которая вычисляет площадь шаровой поверхности.

  2. Разработать класс Sphere для работы с шаром. Единственный член-данное этого класса определяет радиус шара. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытому члену класса. Описать функцию-член класса, которая вычисляет объем шара.

  1. Разработать класс Cylinder для работы с цилиндром. Члены-данные этого класса определяют радиус основания цилиндра и высоту цилиндра. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, которая вычисляет объем цилиндра.

  1. Разработать класс Cylinder для работы с цилиндром. Члены-данные этого класса определяют радиус основания цилиндра и высоту цилиндра. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, которая вычисляет площадь полной поверхности цилиндра.

  1. Разработать класс Cone для работы с конусом. Члены-данные этого класса определяют радиус основания конуса и высоту конуса. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, которая вычисляет объем конуса.

  1. Разработать класс Cone для работы с конусом. Члены-данные этого класса определяют радиус основания конуса и высоту конуса. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, которая вычисляет площадь полной поверхности конуса.

  1. Разработать класс Pyramid для работы с правильной пирамидой. Члены-данные этого класса определяют число сторон основания пирамиды, длину одной стороны и высоту пирамиды. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, которая вычисляет площадь полной поверхности пирамиды.

  1. Разработать класс Prizm для работы с правильной призмой. Члены-данные этого класса определяют число сторон основания призмы, длину одной стороны и высоту призмы. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, которая вычисляет площадь полной поверхности призмы.

  1. Разработать класс Pyramid для работы с правильной пирамидой. Члены-данные этого класса определяют число сторон основания пирамиды, длину одной стороны и высоту пирамиды. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, которая вычисляет объем пирамиды.

  1. Разработать класс Prizm для работы с правильной призмой. Члены-данные этого класса определяют число сторон основания призмы, длину одной стороны и высоту призмы. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Описать функцию-член класса, которая вычисляет объем призмы.

  1. Разработать класс String для работы со строками. Класс должен содержать основной конструктор и конструктор копирования. Определить в этом классе функции-члены, которые обеспечивают ввод/вывод элементов класса, а также доступ к закрытым членам класса. Кроме этого определить функцию-член, которая по двум данным строкам создает третью строку, являющейся «молнией» исходных строк.