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

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

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

Разработать 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
Ответы с готовыми решениями:

Известны сорта роз, выращиваемых тремя цветоводами: "Анжелика", "Виктория", "Гагарин", "Ave Maria", "Катарина", "Юбилейн
Известны сорта роз, выращиваемых тремя цветоводами: "Анжелика", "Виктория", "Гагарин", "Ave...

Дан массив строк: "red", "green", "black", "white", "blue". Запишите в файл элементы массива построчно (в новой строке)
пишу так но не помогает: static void Main(string args) { string...

Описать класс "поезд", содержащий поля "пункт назначения", "номер поезда", "время отправления"
Помогите пожалуйста с классом Описать класс «поезд», содержащий следующие закрытые поля:...

Методом вычислить тип треугольника: "не существует", "тупоугольный", "прямоугольный", "остроугольный"
Помогите пожалуйста С помощью метода вычислить тип треугольника::cry: 1) если первый параметр...

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
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.07.2016, 03:40

Построить иерархию классов "Студент", "преподаватель", "персона", "заведующий кафедрой"
Построить иерархию классов: Студент, преподаватель, персона, заведующий кафедрой 1) Разработать...

Проблема при сравнении: "Оператор ">" не может применяться к операндам типа "Т" и "Т""
Добрый день , пишу сортировку , все делаю на основе Т , но вот в чем проблемма public class...

Напишите программу, которая подсчитывает, сколько учащихся получило "2", "3", "4" и "5"
Помогите, пожалуйста, с решением следующей задачи: учащиеся сдают экзамены по нескольким...

Составить программу по управлению манипулятором "мышь". Выбор типа курсора организовать по нажатию на клавиши "q","w","r
Составить программу по управлению манипулятором &quot;мышь&quot;. Выбор типа курсора организовать по нажатию...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru