Конструктор и деструктор




Конструктор представляет собой специальную функцию, которая автоматически вызывается каждый раз при создании объекта. Обычное назначение конструктора заключается в инициализации элементов данных объекта. Конструктор имеет такое же имя, как и класс. Например, класс с именем file использует конструктор с именем file. Конструктор определяется внутри программы так же, как и любой метод класса. Единственное различие заключается в том, что конструктор не имеет возвращаемого значения. Когда позже объявляется объект, можно передавать параметры конструктору, как показано ниже:

class_name object(valuel, value2, value3)

Деструктор представляет собой функцию, которая автоматически запускается при уничтожении объекта. Деструктор имеет такое же имя, как и класс объекта; однако имя деструктора предваряется символом тильды (~), например ~employee. В программе деструктор определяется так же, как и любой другой метод класса.

 

Задания

1.Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Xнач. до Xкон. с шагом dX.

ax 2 + b при x < 0 и b ≠ 0

⎪⎪ xa

F:=⎨ при x > 0 и b = 0

xc

x востальныхслучаях

⎪⎩ c

где a, b и c – действительные числа. Функция F должна принимать действительное значение, если выражение (Ац ИЛИ Вц) И (Ац ИЛИ Сц) не равно нулю, и целое значение в противном случае. Через Ац, Вц и Сц обозначены целые части значений a, b и c, операции ИЛИ и И – поразрядные. Значения a, b, c, Xнач., Xкон. и dX ввести с клавиатуры.

2. В одномерном массиве, состоящем из n вещественных элементов, вычислить:

1) минимальный элемент массива;

2) сумму элементов массива, расположенных между первым и

последним положительным элементами.

Преобразовать массив так, чтобы сначала располагались все элементы, равные нулю, а потом остальные.

3. В одномерном массиве, состоящем из n вещественных элементов, вычислить:

1) количество положительных элементов массива;

2) сумму элементов массива, расположенных после последнего элемента, равного нулю.

Преобразовать массив так, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом остальные.

4. Дана целочисленная квадратная матрица. Определить:

1) произведение элементов в тех строках, которые не содержат отрицательных элементов;

2) максимум среди сумм элементов диагоналей, параллельных главной.

5. Осуществить циклический сдвиг элементов прямоугольной матрицы на n элементов вправо или вниз (в зависимости от введенного режима), n может быть больше количества элементов в строке или столбце.

6. Дана целочисленная квадратная матрица. Определить:

1) количество строк, содержащих хотя бы один нулевой элемент;

2) номер столбца, содержащего самую длинную серию одинаковых элементов.

7. Реализовать сортировку матрицы.

8. Написать программу расчета стоимости покупки с учетом скидки. Скидка в 3 % предоставляется, если сумма покупки больше 500 р., в 5 % – сумма покупки больше 1000 р. Если сумма покупки более 3000 р. в течение 1 месяца – предоставляется скидка в 10 %.

9. Написать программу, которая запрашивает у пользователя номер месяца, а затем выводит название соответствующего времени года.

10. Написать программу, которая вычисляет частичную сумму ряда 1–1/3 + 1/5 – 1/7 + 1/9 –… и сравнивает полученное значение с числом π4.

При суммировании достаточно большого числа членов ряда величина суммы приближается к π4. Вычислить с заданной точностью.

11. Написать программу, которая вычисляет наибольший общий делитель двух целых чисел.

12. Написать программу, которая объединяет два упорядоченных по возрастанию массива в один, также упорядоченный по возрастанию массив.

13. Написать программу, которая принимает пароль пользователя (строку символов), проверяет достоверность пароля в массиве разрешенных паролей и выводит информацию об успехе/неуспехе ввода.

14. Составьте программу расчета заработной платы и оплаты сверхурочных на основе количества отработанных в неделю часов.

15. Написать программу расчета дня недели в зависимости от введенной даты.

Литература

1. Страуструп, Бьерн. Язык программирования C++ / пер. с англ.

С. Анисимова, М. Кононова под ред.Ф. Андреева, А. Ушакова.– 3-е изд. –

М.; СПб.: Бином: Нев. диалект, 1999. – 990 с.

2. Холзнер, Стивен. Visual C++ 6: учеб. курс. – СПб.: Питер, 1999. – 569с.

3. А. Нейбауэр. Моя первая программа на C/C++/ https://www.piterpress.ru/lib/978531400107/

4. М. Теллес. Borland C++ Builder (+CD). Библиотека программиста. https://www.piter-press.ru/lib/978531400107/

5. Stanley Lippman (Стенли Липпман) Essential C++ (Основы программирования на С++) – https://anatolix.naumen.ru/files/books/lipp...ial_cpp_eng.zip

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-05-25 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: