Объекты и класс

Раздел
Программирование
Предмет
Просмотров
186
Покупок
0
Антиплагиат
Не указан
Размещена
19 Дек 2021 в 03:21
ВУЗ
Не указан
Курс
Не указан
Стоимость
1 200 ₽
Файлы работы   
12
Каждая работа проверяется на плагиат, на момент публикации уникальность составляет не менее 40% по системе проверки eTXT.
zip
T8
12.7 Мбайт 100 ₽
zip
T3
12.8 Мбайт 100 ₽
zip
T7
12.7 Мбайт 100 ₽
zip
T1
12.7 Мбайт 100 ₽
zip
T6
12.7 Мбайт 100 ₽
zip
T10
12.7 Мбайт 100 ₽
zip
T12
12.8 Мбайт 100 ₽
zip
T5
12.7 Мбайт 100 ₽
zip
T9
12.7 Мбайт 100 ₽
zip
T11
12.7 Мбайт 100 ₽
zip
T4
12.7 Мбайт 100 ₽
zip
T2
12.8 Мбайт 100 ₽
Всего 12 файлов на сумму 1200 рублей
Описание

Об’єкти і класи

Завдання 1. Створіть клас Int, що імітує стандартний тип int. Єдине поле цього класу повинно мати тип int. Створіть методи, які будуть встановлювати значення поля, рівним нулю, ініціалізувати його цілим значенням, виводити значення поля на екран і складати два значення типу Int. Напишіть програму, в якій будуть створені три об’єкти класу Int, два з яких будуть ініціалізовані. Знайдіть суму двох ініціалізованих об’єктів, надайте результат третьому, а потім відобразіть результат на екрані.

2. Уявіть пункт платежів за проїзд по автостраді. Кожна машина, що проїжджає повинна заплатити за проїзд 0.50 умовних одиниць, однак частина машин платить за проїзд, а частина проїжджає безкоштовно. У касі ведеться облік числа машин, що проїхала і сумарна виручка від плати за проїзд. Створіть модель такої каси за допомогою класу tollBooth. Клас повинен містити два поля. Одне з них, типу unsigned int, призначене для обліку кількості проїхали автомобілів, а другий, що має тип double, міститиме сумарну виручку від оплати проїзду. Конструктор повинен ініціалізувати обидва поля нульовими значеннями. Метод payingCar() інкрементує число машин і збільшує на 0.50 сумарну виручку. Інший метод, nopayCar(), збільшує на одиницю число автомобілів, але залишає без зміни виручку. Метод display() виводить обидва значення на екран. Там, де це можливо, зробіть методи константними. Створіть програму, яка продемонструє роботу класу. Програма повинна запропонувати користувачеві натиснути одну клавішу для того, щоб зімітувати процес оплати автолюбителем проїзду, і іншу клавішу, щоб зімітувати недобросовісного водія. Натискання клавіші Esc повинно привести до видачі поточних значень кількості машин і виручки і завершенню програми.

3. Створіть клас з ім’ям time, що містить три поля типу int, призначених для зберігання годин, хвилин і секунд. Один з конструкторів класу повинен ініціалізувати поля нульовими значеннями, а інший конструктор – заданим набором значень. Створіть метод класу, який буде виводити значення полів на екран у форматі 11:59:59, і метод, для додавання значень двох об’єктів типу time, переданих в якості аргументів. У функції main() слід створити два ініціалізованих об’єкти (чи повинні вони бути константними?) і один неініціалізований об’єкт. Додайте два ініціалізованих значення, а результат надайте третьому об’єкту і виведіть його значення на екран. Де можливо, зробіть методи константними.

4. Створіть клас employee, використовуючи завдання попередньої лабораторної роботи. Клас повинен включати поле типу int для зберігання номера співробітника і поле типу double для зберігання величини його заробітної плати. Методи класу повинні надавати користувачеві можливість вводити і відображати дані класу. Напишіть функцію main(), яка запросить користувача ввести дані для трьох співробітників і виведе отримані дані на екран.

5. Взявши за основу структуру з попередньої лабораторної роботи, створіть клас date. Його дані повинні розміщуватися в трьох полях типу int: month, day і year. Метод класу getdate() повинен приймати значення для об’єкта в форматі 12/31/02, а метод showdate() – виводити дані на екран.

6. Розширте зміст класу employee із завдання 4, включивши в нього клас date і перерахування etype (див. попер. лаб. роб.). Об’єкт класу date буде використовуватися для зберігання дати прийому співробітника на роботу. Перерахування буде використано для зберігання статусу співробітника: лаборант, секретар, менеджер і т. Д. Останні два поля даних повинні бути закритими у визначенні класу employee – номер і розмір заробітної плати співробітника. Вам буде необхідно розробити методи getemploy() і putemploy(), призначені відповідно для введення і відображення даних про співробітника. Напишіть функцію main(), яка надасть запит користувачу ввести дані про трьох співробітників, а потім виведе ці дані на екран.

Оглавление

7. У морській навігації координати точки вимірюються в градусах і хвилинах широти і довготи. Наприклад, координати бухти Паніті на о.Таїті дорівнюють 149 градусів 34.8 хвилин східної довготи і 17 градусів 31.5 хвилин південної широти. Це записується як 149° 34.8'W, 17° 31.5'S. Один градус дорівнює 60 хвилинам (застаріла система також ділила одну хвилину на 60 секунд, але зараз хвилину ділять на звичайні десяткові частки). Довгота вимірюється величиною від 0 до 180 градусів на схід або на захід від Гринвіча. Широта приймає значення від 0 до 90 градусів північніше або південніше екватора. Створіть клас angle, що включає наступні три поля: типу int для числа градусів, типу double для числа хвилин і типу char для вказівки напрямку (N, S, Е або W). Об’єкт цього класу може містити значення як широти, так і довготи. Створіть метод, що дозволяє ввести координати точки, напрямок, в якому вона вимірюється, і метод, що виводить на екран значення цієї координати, наприклад 179° 59.9'E. Крім того, напишіть конструктор, що приймає три аргументи. Напишіть функцію main(), яка спочатку створює змінну за допомогою конструктора з трьома аргументами і виводить її значення на екран, а потім циклічно виводить запити користувачу ввести значення координати і відображає введене значення на екрані. Для виведення символу градусів (°) можна скористатись символьною константою '\xF8'.

8. Створіть клас, одне з полів якого зберігає «порядковий номер» об’єта, тобто для першого створеного об’єкта значення цього поля дорівнює 1, для другого створеного об’єкта значення дорівнює 2 і т.д. Для того щоб створити таке поле, вам необхідно мати ще одне поле, в яке буде записуватися кількість створених об’єктів класу (це означає, що останнє поле повинно ставитися не до окремих об’єктів класу, а до всього класу в цілому). Кожен раз при створенні нового об’єкта конструктор може отримати значення цього поля і в відповідності до нього призначити об’єкту індивідуальний порядковий номер. В клас слід включити метод, який буде виводити на екран порядковий номер об’єкту. Створіть функцію main(), в якій будуть створені три об’єкти, і кожен об’єкт виведе на екран свій порядковий номер.

9. На основі структури fraction з попередніх лабораторних робіт створіть клас fraction. Дані класу повинні бути представлені чотирма полями: чисельником, знаменником, цілою частиною і знаком. Методи класу повинні отримувати від користувача значення чисельника і знаменника дробу у формі 3/5 і виводити значення дробу в цьому ж форматі. Крім того, мають бути розроблені методи арифметичних операцій зі значеннями двох дробів. Напишіть функцію main(), яка циклічно запитує у користувача введення двох дробів і математичну операцію, потім виконує її і виводить результат на екран. Після кожної такої операції програма повинна виводити запит користувачеві, чи варто продовжувати цикл.

10. Створіть клас з ім’ям ship, який буде містити дані про номер корабля і координатах його розташування. Для завдання номера корабля слід використовувати механізм, аналогічний до завдання 7 та 8. Для зберігання координат використовуйте два поля типу angle. Розробіть метод, який буде зберігати в об’єкт дані про корабель, що вводяться користувачем, і метод, що виводить дані про корабель на екран. Напишіть функцію main(), що створює три об’єкти класу ship, потім запитує введення користувачем даних про кожен з кораблів і виводить на екран всі отримані дані.

11. Модифікуйте калькулятор, створений у завданні 9, додайте до складу класу функцію, що переводить дріб у десятковий (скінченний та нескінченний періодичний).

12. Використовуйте перевагу ООП, що полягає в тому, що одного разу створений клас можна поміщати в інші програми. Створіть нову програму, яка включатиме клас fraction. Програма повинна виводити аналог цілочисельної таблиці множення для дробів. Користувач вводить знаменник, а програма повинна підібрати всілякі цілі значення чисельника так, щоб значення отриманих дробів знаходилися між 0 і 1. Дроби з отриманого таким чином набору перемножуються один з одним всеможливими комбінаціями, в результаті чого виходить таблиця наступного вигляду (для знаменника 6):

Вам подходит эта работа?
Похожие работы
C/C++
Творческая работа Творческая работа
17 Ноя в 05:41
8
0 покупок
C/C++
Эссе Эссе
17 Ноя в 05:35
8
0 покупок
C/C++
Эссе Эссе
16 Ноя в 15:39
10
0 покупок
C/C++
Эссе Эссе
16 Ноя в 15:34
11
0 покупок
C/C++
Эссе Эссе
16 Ноя в 15:30
31
0 покупок
Другие работы автора
Технологические процессы в строительстве
Дипломная работа Дипломная
2 Мая 2022 в 12:41
366
0 покупок
C/C++
Задача Задача
2 Мая 2022 в 12:29
350
0 покупок
C/C++
Задача Задача
9 Апр 2022 в 19:23
431
0 покупок
C/C++
Курсовая работа Курсовая
8 Апр 2022 в 13:35
528
1 покупка
C/C++
Задача Задача
7 Апр 2022 в 13:33
342
0 покупок
C/C++
Задача Задача
7 Апр 2022 в 13:30
343
0 покупок
C/C++
Задача Задача
7 Апр 2022 в 13:18
410
0 покупок
C/C++
Задача Задача
7 Апр 2022 в 12:48
392
0 покупок
C/C++
Задача Задача
7 Апр 2022 в 12:34
403
0 покупок
MatLab
Задача Задача
7 Апр 2022 в 12:29
290
0 покупок
Pascal
Задача Задача
7 Апр 2022 в 12:15
347
0 покупок
Web-разработки
Отчет по практике Практика
7 Апр 2022 в 11:08
282
0 покупок
Web-разработки
Задача Задача
7 Апр 2022 в 10:59
215
1 покупка
C/C++
Задача Задача
7 Апр 2022 в 09:42
401
0 покупок
C/C++
Задача Задача
11 Фев 2022 в 19:22
301
0 покупок
Microsoft Excel
Задача Задача
11 Фев 2022 в 19:11
290
0 покупок
C/C++
Лабораторная работа Лабораторная
11 Фев 2022 в 19:05
267
0 покупок
Web-разработки
Курсовая работа Курсовая
11 Фев 2022 в 18:54
301
1 покупка
C/C++
Задача Задача
11 Фев 2022 в 18:42
313
0 покупок
Предыдущая работа
Темы журнала
Показать ещё
Прямой эфир