ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Задания для выполнения лабораторной работы №11.«Классы. Конструкторы и деструкторы»
Разработайте программу на языке С++, используя пользовательский тип данных – класс. Вариант 1. Создайте класс Triangle (треугольник) для представления треугольника. Поля данных должны включать углы и стороны. Требуется реализовать операции получения и изменения полей данных, вычисления площади, вычисления периметра, вычисления высот и определения вида треугольника (равносторонний, равнобедренный или прямоугольный). Вариант 2. Создайте класс Complex (комплекс) для работы с комплексными числами. Комплексное число представляется парой чисел (a, b), где a – действительная часть, b – мнимая часть. Требуется реализовать операции сложения add: (a, b)+(c, d)=(a+b, c+d), вычитания sub: (a, b)-(c, d)=(a-b, c-d), умножения mul: (a, b)*(c, d)=(a*c-b*d, a*d+b*c), деления div: (a, b)/(c, d)=(a*c+b*d, b*c-a*d)/(c*c+d*d), сравнение equ: (a, b)=(c, d), если (a=c) и (b=d), сопряженное число conj: conj(a, b)=(a, -b). Вариант 3. Создайте класс Account (счет), представляющий банковский счет. В классе должны быть четыре поля: фамилия владельца, номер счета, процент начисления и сумма в рублях. Открытие нового счета выполняется операцией инициализации. Необходимо выполнить следующие операции: - сменить владельца счета; - снять некоторую сумму денег со счета; - положить деньги на счет; - вычислить проценты; - перевести сумму в доллары; - перевести сумму в евро; - получить сумму прописью (преобразовать в числительное). Вариант 4. Создайте класс Goods (товары). В классе должны быть представлены поля: наименование товара, дата оформления, цена товара, количество единиц товара, номер накладной, по которой товар поступил на склад. Реализовать методы изменения цены товара, изменения количества товара (увеличения и уменьшения), вычисления стоимости товара. Метод toString() должен выдавать в виде строки стоимость товара. Вариант 5. Создайте класс Payment (зарплата). В классе должны быть представлены поля: фамилия-имя-отчество, оклад, год поступления на работу, процент надбавки, подоходный налог, количество отработанных дней в месяце, количество рабочих дней в месяце, начисленная и удержанная суммы. Реализовать методы: - вычисления начисленной суммы; - вычисления удержанной суммы; - вычисления суммы, выдаваемой на руки; - вычисления стажа. Стаж вычисляется как полное количество лет, прошедших от года поступления на работу, до текущего года. Начисления представляют собой сумму, начисленную за отработанные дни, и надбавки, то есть доли от первой суммы. Удержания представляют собой отчисления в пенсионный фонд (1% от начисленной суммы) и подоходный налог. Подоходный налог составляет 13% от начисленной суммы без отчислений в пенсионный фонд. Вариант 6. Создайте класс Bill (счет), представляющий собой разовый платеж за телефонный разговор. Класс должен включать в себя поля номера телефона, тарифа за минуту разговора, скидки (в процентах), времени разговора (в минутах) и суммы к оплате. Реализовать метод вычисления суммы к оплате. В программе продемонстрировать создание, инициализацию и обработку массива объектов типа Bill с различными исходными данными для вычисления сумм к оплате. Вычислить общую сумму к оплате. Вариант 7. Создайте класс AvtoVlad, хранящий информацию о владельце автомобиля: имя, номер автомобиля, номер техпаспорта, дата рождения, телефон, отделение регистрации ГИБДД. Доступ к данным класса организовать посредством соответствующих методов. Разработать программу, в которой создается массив объектов данного класса. В программе организовать: - ввод данных с клавиатуры; - вывод данных массива на экран в виде таблицы; - поиск и вывод информации о владельцах автомобилей, зарегистрированных в отделении ГИБДД; - поиск и вывод информации об автовладельце по номеру автомобиля. Вариант 8. Создайте класс Abonent, хранящий информацию о телефонном абоненте: фамилию, имя, дата рождения, адрес и телефонный номер. Доступ к полям класса организовать посредством соответствующих методов. Разработать программу, в которой создается массив объектов данного класса. В программе организовать: - ввод данных с клавиатуры; - вывод данных массива на экран в виде таблицы; - поиск и вывод информации о телефонных абонентах по номеру телефона. Вариант 9. Создайте класс Bankomat, моделирующий работу банкомата. В классе должны содержаться поля для хранения идентификационного номера банкомата, информации о текущей сумме денег, оставшейся в банкомате, минимальной и максимальной суммах, которые позволяется снять клиенту в один день. Сумма денег представляется полями-номиналами 10-1000. Реализовать метод инициализации банкомата, метод загрузки купюр в банкомат и метод снятия определенной суммы денег. Метод снятия денег должен выполнять проверку на корректность снимаемой суммы: она не должна быть меньше минимального значения и не должна превышать максимальное значение. Метод toString() должен преобразовать в строку сумму денег, оставшуюся в банкомате. Вариант 10. Создайте класс HomeLibrary (домашняя библиотека). В классе должны быть представлены поля: универсальный десятичный код (УДК) книги, наименование книги, фамилия-имя-отчество автора, издательство, год издания, цена. Доступ к полям класса организовать посредством соответствующих методов. Разработать программу, в которой создается массив объектов данного класса. В программе организовать: - добавление книги в библиотеку; - удаление книги из библиотеки; - поиск книги по УДК; - сортировка по цене.
Не нашли, что искали? Воспользуйтесь поиском:
|