§ 22. Тип данных класс (class)

Упражнения

    

1. Дополните класс date (пример 22.5) перечисленными возможностями.

    1. Метод для получения количества дней в месяце.
    2. Метод для проверки, является ли год високосным.
    3. Метод для проверки корректности даты.
    4. Метод для получения номера текущего дня при отсчете от 1.1.1900. (см. пример 16.13).
    5. Конструктор с двумя параметрами, которые являются числом и месяцем, для года установить текущий.
    6. Предложите свои функции.

2. Дополните класс IntNumber (пример 22.6) перечисленными возможностями.

1. Метод для проверки числа на то, является ли оно полным квадратом.
2. 
Метод для вычисления факториала числа.
3. 
Метод для проверки числа на то, является ли оно «именным»:

    • простым числом Мерсена (число Мерсена представимо в виде 2n – 1);
    • числом Армстронга (натуральное число из k цифр является числом Армстронга, если сумма его цифр, возведенных в k-ю степень, равна самому числу, например 153 = 13 + 53 + 33, k = 3);
    • другим интересным числом (см. упр. 6 после § 8)

4. Метод для разложения числа на простые множители.
5. Предложите свои функции.

3. Реализуйте класс для хранения времени. Добавьте в качестве методов те функции, которые были реализованы для соответствующей структуры (пример 16.12).

4. Создайте класс treugolnik1, реализующий математические формулы для вычисления площади треугольника, периметра треугольника, средней линии, радиусов вписанной и описанной окружностей и др.