Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 13.06.2016
Сообщений: 12
1

Разработать классы "Переговорное устройство", "Телефон", "Мобильный телефон"

02.07.2016, 14:27. Показов 3302. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Разработать 3 класса:

Переговорное устройство (Communicator)

Закрытые переменные

Текст полученного сообщения

Методы

Конструктор без параметра

Закрытый метод Receive с параметром-строкой - получение телефоном

сообщения

Открытый метод Send с параметрами - коммуникатор и сообщение -

передача сообщения указанному коммуникатору

Свойство ReceivedMessage для доступа по чтению к тексту полученного

сообщения

Телефон (Phone) - производный от Communicator

Закрытые переменные

Телефон, с которым данный телефон находится на связи (null - нет связи)

Методы

Конструктор без параметров

Открытый метод Connect с параметром-телефоном - устанавливает связь с

заданным телефоном.

Открытый метод Send с параметром-строкой - передает сообщение

телефону на связи или порождает ошибку, если телефона на связи нет

Открытый метод Drop без параметров - прекращает связь с телефоном

Мобильный телефон (Mobile) - производный от Phone

Закрытые переменные

Величина текущего счета (вещественное число)

Стоимость одного переданного символа (вещественное число)

Методы

Конструктор с параметрами для переменных класса.

Метод Send с параметром-строкой осуществляет передачу строки телефону

на связи и уменьшающий текущий счет на стоимость передачи сообщения.

Если денег на счету недостаточно для передачи сообщения, генерируется

ошибка.


В Main

Создать по два объекта каждого класса.

Продемонстрировать передачу сообщения одного коммуникатора другому.

Продемонстрировать успешную передачу сообщения одного телефона

другому.

Продемонстрировать неудачную передачу сообщения одного телефона

другому после разрыва связи.

Продемонстрировать неудачную передачу сообщения одного мобильного

телефона другому при передаче достаточно длинного сообщения.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.07.2016, 14:27
Ответы с готовыми решениями:

Класс мобильный телефон. Добавить проверку на существование цены телефона введеной пользователем
надо сделать проверку, чтобы если пользователь вводил цену телефона которой нет, и программа...

Поддерживает ли мобильный телефон цветные изображения
Требуется узнать - поддерживает ли мобильный телефон цветные изображения(посредством HTTP_ACCEPT...

Отладка приложения через телефон. Телефон не определяется, как устройство для разработки
Доброго времени суток, друзья! Андроидом занимался где-то в последний раз годик назад, составляя...

Мобильный телефон
Самсунг очень нагревается

3
38 / 38 / 52
Регистрация: 03.02.2016
Сообщений: 99
04.07.2016, 13:28 2
class Communicator
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public class Communicator
    {
        private string _textmessage;
 
        private Communicator _communicator;
 
        public string ReceivedMessage
        {
            get
            {
                if (_textmessage != null)
                    return _textmessage;
                else
                    return "No message text";
            }
        }
        public Communicator() {}
        private void Receive(string textmessage)
        {         
            Console.WriteLine(textmessage);
        }
        public void Send(Communicator communicator, string textmessage)
        {
            _communicator = communicator;
            _textmessage = textmessage;
            Receive(textmessage);
        }
    }


class Phone
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 public class Phone : Communicator
    {
        private Phone _phone;
 
        public Phone() { }
 
        public void Connect(Phone phone)
        {
            _phone = phone;
        }
        public virtual void Send(string textmessage)
        {
            Console.WriteLine(_phone == null ? "Error, no phone" : textmessage);
        }
 
        public void Drop()
        {
            _phone = null;
        }
    }


class Mobile
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 public class Mobile : Phone
    {
        private int _valueAccount;
        private int _costOneSymbol;
 
        public Mobile(int valueAccount, int costOneSymbol)
        {
            _valueAccount = valueAccount;
            _costOneSymbol = costOneSymbol;
        }
        public override void Send(string textMessage)
        {
            for (int i = 0; i < textMessage.Length - 1; i++)
            {
                if (_valueAccount > _costOneSymbol)
                {
                    _valueAccount -= _costOneSymbol;
                }
                else
                {
                    Console.WriteLine("Insufficient funds in the account");
                    return;
                }
            }
            Console.WriteLine(textMessage);
        }
    }


Main
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
static void Main(string[] args)
        {
            Communicator cm1 = new Communicator();
            Communicator cm2 = new Communicator();
 
            cm1.Send(cm2,"Hello, i'm message text for communicator"); // true
        
 
            Phone p1 = new Phone();
            Phone p2 = new Phone();
 
            p1.Connect(p2);
            p1.Send("Hello, i'm message text for phone"); // true
 
            p1.Drop();
            p1.Send("Hello, i'm message text for phone"); // false
 
            Mobile m1 = new Mobile(1000,5);
            Mobile m2 = new Mobile(15,5);
           
            m1.Send("Hello, i'm message text for mobile"); // true
            m2.Send("Hello, i'm message text for mobile"); //false
          
            Console.ReadLine();
        }
0
0 / 0 / 0
Регистрация: 13.06.2016
Сообщений: 12
07.07.2016, 00:17  [ТС] 3
Как это сделать в Windows Forms?
0
158 / 187 / 48
Регистрация: 25.11.2013
Сообщений: 978
07.07.2016, 03:40 4
Здраствуйте. Я, Кирилл. Хотел бы чтобы вы сделали игру, 3Д-экшон суть такова... Пользователь может играть лесными эльфами, охраной дворца и злодеем. И если пользователь играет эльфами то эльфы в лесу, домики деревяные набигают солдаты дворца и злодеи. Можно грабить корованы... И эльфу раз лесные то сделать так что там густой лес...
0
07.07.2016, 03:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.07.2016, 03:40
Помогаю со студенческими работами здесь

Услуга за мобильный телефон
Описать заданный класс в отдельном модуле. Все поля класса – закрытые. Вычисляемые поля оказаны...

Gongkai - мобильный телефон за $12
В китайском торговом центре Mingtong Digital был обнаружен крайне любопытный телефон. Первое, что...

Слайдеры и мобильный телефон
Перелопатил кучу слайдеров под joomla 3. Правильно я понял что слайдеры на javascript не будут...

Прямоугольный мобильный телефон
Подскажите, а есть ли идеально прямоугольные телефоны? Без закруглений? Обычная звонилка подойдет

Экспорт БД в мобильный телефон
Скажите,как выгрузить БД Aссess(номера телефонов), оболочка delphi7 в мобильный телефон. Возможно...

Exchange vs Мобильный телефон
Добрый день! Проблема заключается в следующем: При отправка с мобильного устройства письма с...

Браузеры на мобильный телефон с сенсором
Всем Здравствуйте у меня такая тема пользовался разными браузерами для сенсорных телефонов но они...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru