Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Задание к практической работе.

Читайте также:
  1. I. Задание для самостоятельной работы
  2. Выводы по работе.
  3. Глава 1. Подготовка тормозного оборудования к работе.
  4. Государственное задание с субсидиями
  5. Диалектика субъекта и объекта в познавательной и практической деятельности человека.
  6. ДЛЯ ПРАКТИЧЕСКОЙ РАБОТЫ
  7. Домашнее задание

Составить программу на языке С++ для решения поставленной задачи по вариантам.

 

 

№ вари-анта Задание
  Определить класс Pair (пара целых чисел). Реализовать операции сложения пар (a,d)+(c,d)=(a+b,c+d) и умножения на число. Определить класс-наследник Money с полями: рубли и копейки. Переопределить операцию сложения и реализовать методы вычитания и деления денежных сумм.  
  Реализовать базовый класс Rational для создания и работы с рациональной (несократимой) дробью. Дробь представляется парой целых чисел а (числитель) и b (знаменатель). Реализовать методы сложения дробей (a,b)+(c,d)=(ad+bc, bd); вычитания дробей (a,b)-(c,d)=(ad-bc, bd); умножения (a,b)(c,d)=(aс,bd) и деления дробей (a,b)/(c,d)=(ad, bc). Определить производный класс Fraction, в котором реализовать метод сравнения дробей (на равенство), а также метод сокращения дроби на заданное число.
    Создать класс Triad (тройка целых чисел). Определить метод увеличения полей на 1. Определить класс-наследник Date с полями: день, месяц и год. Переопределить методы увеличения полей на 1 и определить метод увеличения даты на n дней.  
  Создать класс BitString для работы с битовыми строками длиной 16 бит. Реализовать традиционные операции для работы с битами (and, or, xor, not). Определить класс-наследник AdvancedBitString, реализовав методы сдвига влево и вправо на заданное количество битов.  
  Создать базовый класс Queue, реализующий очередь. Элементом очереди является структура с полями: фамилия, количество членов семьи, год постановки в очередь. Определить методы добавления структуры в очередь, вывода данных по заданному номеру очереди, подсчёта количества элементов в очереди. Реализовать класс-наследник SortQueue, в котором определить операцию сортировки очереди по году постановки в очередь.
  Создать базовый класс Array — динамический массив типа int. Реализовать методы доступа к отдельному элементу, при этом должна выполняться проверка индекса на допустимость. Определить класс-наследник Decimal для работы десятичными целыми числами со знаком произвольной длины. Реализовать арифметические операции сложения и вычитания, а также сравнения чисел.
  Создать базовый класс Queue, реализующий очередь. Элементом очереди является структура с полями: фамилия, количество членов семьи, год постановки в очередь. Определить методы добавления структуры в очередь, вывода данных по заданному номеру очереди, подсчёта количества элементов в очереди. Реализовать класс-наследник Set, в котором добавить операции объединения и пересечения двух очередей.
  Определить класс Pair (пара чисел) с полями типа double. Реализовать операции сложения пар (a,d)+(c,d)=(a+b,c+d) и умножения на число. Определить производный класс Complex и реализовать методы умножения (a,b)(c,d)=(ac-bd,ad+bc) и вычитания (a,b)-(c,d)=(a-b,c-d) комплексных чисел.  
  Создать класс Triad (тройка целых чисел). Определить метод увеличения заданного поля на указанную величину. Определить класс-наследник Triangle, в котором реализовать метод проверки возможности построения треугольника с заданными длинами сторон, а также методы вычисления периметра и площади треугольника.  
  Реализовать базовый класс Number для числового типа unsigned int с набором арифметических операций. Реализовать класс-наследник Bit с методами получения бинарного представления целого числа и его обратного кода (инверсия бинарного числа с добавлением единицы к младшему разряду).
  Создать базовый класс Array — динамический массив типа float. Реализовать методы доступа к отдельному элементу, при этом должна выполняться проверка индекса на допустимость. Определить класс-наследник SortArray, в котором реализовать методы упорядочения элементов массива по возрастанию или убыванию.
  Реализовать базовый класс Account, представляющий собой банковский счёт со следующими компонентами: фамилия владельца, номер счёта, процент начисления, сумма в рублях. Реализовать методы снятия и добавления некоторой суммы на счёт, а также начисления процентов. Определить производный класс CurrencyAccount, в котором предусмотреть изменение номера счёта, процента начисления и перевода суммы в заданную валюту.
  Реализовать класс Bell, представляющий собой разовый платёж за телефонный разговор. Класс должен включать в себя поля номера телефона, тарифа за минуту разговора, времени разговора (в минутах) и суммы к оплате. Реализовать метод вычисления суммы к оплате. Определить класс-наследник Discount, в котором предусмотреть скидку в процентах и метод пересчёта суммы к оплате с учётом скидки.
  Реализовать базовый класс Number для числового типа double с набором арифметических операций, а также операций возведения в произвольную степень и сравнения. Реализовать класс-наследник с операциями получения обратной величины, вычисления произвольного корня, вычисления натурального и десятичного логарифма числа.
  Создать базовый класс Array — массив с неповторяющимися элементами типа int. Реализовать методы доступа к отдельному элементу, при этом должна выполняться проверка индекса на допустимость. Определить класс-наследник Set (множество). Множество должно обеспечивать включение элемента во множество, исключение элемента из множества, объединение, пересечение и вычитание множеств.

 


Дата добавления: 2015-07-16; просмотров: 206 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Краткие теоретические сведения.| Требования к уровню освоения содержания дисциплины.

mybiblioteka.su - 2015-2024 год. (0.007 сек.)