Лабораторная работа №14

Лабораторная работа №14
Тема: Использование различных свойств наследования и уточнения классов.
Цель: Изучить приёмы реализации наследования классов.

 

Вы не можете скачивать файлы с нашего сервера

Задания:

1. Создать базовый класс Complex (комплексное число), содержащий закрытые поля «целая часть» и «вещественная часть». Определить в нём методы сложения комплексных чисел по правилу (a,b) + (c,d) = (a+b, c+d), вычитания комплексных чисел по правилу (a, b) - (c, d) = (a-b, c-d), и умножения комплексных чисел по правилу (a, b) * (c, d) = (ac-bd, ad+bc), методы ввода и вывода комплексного числа. Определить в классе конструктор инициализации и конструктор с параметром. Описать производный класс Int (целое число), наследующий все методы класса Complex, определить в нём собственный метод деления. Описать конструктор инициализации и конструктор с параметром для целого числа, вызывающий соответствующие конструкторы базового класса. Конструктор с параметром для целого числа инициализирует поле, отвечающее за мнимую часть в классе Complex нулём. Написать программу, иллюстрирующую работу с классом.

2. Создать базовый класс Matrix, содержащий закрытые поля «количество строк» и «количество столбцов» а также поле-двумерный массив элементов. Определить методы сложения матриц, вычитания матриц и умножения матрицы на число, складывая, вычитая, и умножая на число соответствующие элементы матриц, методы ввода и вывода матрицы. Определить в классе конструктор инициализации, создающий матрицу из одного нулевого элемента (0) и конструктор с параметром, принимающий число строк и столбцов в качестве параметров. Описать производный класс Vector как частный случай матрицы с одной строкой, наследующий все операции класса Matrix, определить в нём собственный метод modul(), считающий модуль вектора по формуле . Описать конструктор инициализации и конструктор с параметром для целого числа, вызывающий соответствующие конструкторы базового класса. Конструктор с параметром для вектора принимает число элементов вектора и инициализирует число столбцов в матрице количеством элементов вектора, а число строк в матрице инициализирует единицей.

3. Описать базовый класс Money, содержащий закрытые поля целой и дробной части валюты. Определить методы сложения денег, вычитания денег, умножения денег на число и деления денег на число. Определить в классе конструктор инициализации и конструктор с параметром, принимающем вещественное число и инициализирующем соответствующие поля класса. Описать производные классы Dollar и Ruble, наследующие методы класса Money а также содержащие собственные методы ввода и вывода. Курс валют опишите в закрытом поле класса Dollar. Описать конструкторы инициализации и с параметром, вызывающие соответствующие конструкторы базового класса. Для класса Dollar опишите второй конструктор с параметром, принимающем вещественное число в качестве значения валюты и вещественное число в качестве курса валюты. В классе Dollar создать метод, который конвертирует доллары в рубли. Курс валют опишите в закрытом поле класса Dollar.



Обсудить на форуме

Комментарии к статье:

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Регистрация

Реклама

Последние комментарии

  • GENAJag
    Написал(а): GENAJag
  • Jacog
    Написал(а): Jacog
  • Maxvel
    Написал(а): Maxvel
    В новости: Маршрут №27
  • cbetlana
    Написал(а): cbetlana
    В новости: Маршрут №27
  • Maxvel
    Написал(а): Maxvel
    В новости: Маршрут № 30
  • Maxvel
    Написал(а): Maxvel
    В новости: Маршрут №15
  • RonnieUncen
    Написал(а): RonnieUncen
  • loram
    Написал(а): loram
  • Inna2200111
    Написал(а): Inna2200111
  • Shishkinrom
    Написал(а): Shishkinrom