![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 11.12.2009
Сообщений: 11
|
![]()
1. Описать базовый класс Элемент.
Закрытые поля: • имя элемента (строка символов); • количество входов элемента; • количество выходов элемента. Методы: • конструктор класса без параметров; • конструктор, задающий имя и устанавливающий равным 1 количество входов и выходов; • конструктор, задающий значения всех полей элемента. Свойства: • имя элемента (только чтение) • количество входов элемента • количество выходов элемента 2. На основе класса Элемент описать произвольный класс Комбинационный, представляющий собой комбинационный элемент (двоичный вентиль) который может иметь несколько входов и один выход. Поле – массив значений входов. Методы: • конструкторы; • метод, задающий значение на выходах экземпляра класса; • метод, позволяющий опрашивать состояние отдельного входа экземпляра класса; • метод, вычисляющий значение выхода (по варианту задания). 3. На основе класса Элемент описать производный класс Память, представляющий собой триггер. Триггер имеет входы, соответствующие типу триггера (см. далее вариант задания) и входы установки сброса. Все тригеры считаются синхронными, сам синхровход в состав триггера не включается. Поля: • массив значений входов объекта класса, в массиве учитываются все входы (управляющие и информационные); • состояние на прямом входе триггера; • состояние на инверсном выходе триггера; Методы: • конструктор (по умолчанию сбрасывает экземпляр класса); • конструктор копирования; • метод, задающий значения на входах экземпляра класса; • метод позволяющий опрашивать состояние отдельного выхода экземпляра класса; • метод вычисляющий состояние экземпляра класса (по варианту задания) в зависимости от текущего состояния и значений на входах; • метод, переопределяющий операцию == для экземпляров класса 4. Создать класс Регистр, используя класс Память как вложенный класс. Поля: • состояние входа «Сброс» - один для экземпляра класса; • состояние входа «Установка» - один для экземпляра класса; • массив типа Память заданной в варианте размерности; • массив(массивы) содержащий значения на соответствующих входах элементов массива типа Память. Методы: • метод, задающий значение на входах экземпляра класса; • метод, позволяющий опрашивать состояние отдельного выхода экземпляра класса; • метод, вычисляющий значение нового состояния экземпляра класса. Все поля классов Элемент, Комбинационный и Память должны быть описаны с ключевым словом private. В задании описаны только обязательные члены и методы класса. Можно задавать дополнительные члены и методы, если они не отменяют обязательные и обеспечивают дополнительные удобства при работе с данными классами, например, описать функции вычисления выхода/состояния как виртуальные. Вариант задания: Коммбинационный элемент: МОД2 Число входов: 5 Триггер: D Разрядность регистра: 10 Что то у меня с этим заданием небольшой напряг, даже с теми элементами, которые описаны. Можете оказать помощь в написании программы? |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 07.11.2009
Сообщений: 24
|
![]()
Пока еще в объектно-ориентированном программировании опыта мало, но вот решил попробовать тебе помочь и заодно попрактиковаться, вообщем вот что у меня получилось
![]() |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 11.12.2009
Сообщений: 11
|
![]()
Вот моя наработка. Просто у каждого свой метод решения, и наверно никто рзбираться не будет. Но всеже, у меня косяк с выводом(постоянно один и тот же результат). В чом может быть проблема?
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 11.12.2009
Сообщений: 11
|
![]()
А как сделать, чтобы для хранения экземпляров разработанных классов использовать стандартные параметризированные коллекции. Во всех класах реализовать интерфейс IComparable и перегрузить операции отношения для реализации значимой семантики сравнения объектов по какому-либо полю
|
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 07.11.2009
Сообщений: 24
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
помогите описать | sol`ka | Общие вопросы C/C++ | 0 | 21.12.2009 16:05 |
помогите описать Класс | joker815 | Помощь студентам | 10 | 29.09.2009 00:02 |
Помогите описать фаервол... | Sorrowing | Общие вопросы C/C++ | 4 | 06.07.2009 00:23 |
Описать модули | SASHA19 | Помощь студентам | 3 | 26.03.2009 16:01 |
вставка в тело тригера INTITY_INSERT | Pitbull | SQL, базы данных | 0 | 21.02.2008 23:45 |