Задача на c#

Выполнен
Заказ
5176333
Раздел
Программирование
Тип работы
Антиплагиат
Не указан
Срок сдачи
16 Янв 2023 в 15:00
Цена
500 ₽
Блокировка
5 дней
Размещен
15 Янв 2023 в 23:23
Просмотров
101
Описание работы

Задание 1


Реализовать программу, которая будет считывать состояние объектов Lamp (светильник), Cat (кошка) и Father (папа). Объекты должны быть реализованы в виде следующих классов:


class Lamp

{

    public bool TurnedOn { get; set; }


    public string GetLampStatus()

    {

        // вернуть описание состояния

    }

}


class Cat

{

    public string WhatIdDoingNow()

    {

        // вернуть что делает кошка

    }

}


class Father

{

    public string WhatHeIsDoingNow()

    {

        // вернуть что делает папа

    }

}


Условия задачи:

  1. Необходимо использовать делегат для считывания состояния 
  2. Считывание состояния необходимо описать в методе ReadState(Delegate), которые должен находиться в классе Program и должен принимать только один параметр, ваш делегат. (подсказка: можно воспользоваться методом GetInvocationList https://bit.ly/2NqEbrB )
  3. Пример вывода:


Состояния объектов:


1. Лампа включена

2. Кошка играет

3. Папа спит


Задание 2


У вас есть следующие классы:


// Объект сообщения

class MyMessage

{

    public string MessageType { get; }

    public string Message { get; }


    public MyMessage(string type, string message)

    {

        MessageType = type;

        Message = message;

    }

}


// Объект телефон, который принимает сообщения с типом sms

class Phone

{

    // здесь можно добавить доп. реализацию при необходимости


    private void ReceiveSms(MyMessage msg)

    {

        if (msg.MessageType == "sms")

        {

            Console.WriteLine($"Получил смс {msg.Message}");

        }

    }

}


// Объект почта, который принимает сообщения с типом email

class Mail

{

    // здесь можно добавить доп. реализацию при необходимости


    private void ReceiveMail(MyMessage msg)

    {

        if (msg.MessageType == "email")

        {

            Console.WriteLine($"Получил письмо {msg.Message}");

        }

    }

}


Необходимо реализовать класс MessageManager, который будет содержать событие NewMessage. Необходимо связать классы MessageManager, Phone, Mail и MyMessage таким образом чтобы классы Phone и Mail обрабатывали событие NewMessage.


Пример вывода программы:


Отправка сообщения

Введите тип сообщения: sms

Введите сообщение: привет


Получатель:

Получил смс привет

Нужна такая же работа?
  • Разместите заказ
  • Выберите исполнителя
  • Получите результат
Гарантия на работу1 год
Средний балл4.52
СтоимостьНазначаете сами
ЭкспертВыбираете сами
Уникальность работыот 70%
Время выполнения заказа:
21 час 38 минут
Выполнен
Нужна аналогичная работа?
Оформи быстрый заказ и узнай стоимость
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Прямой эфир