Лабораторная работа №3. Параметризованный абстрактный тип данных «Процессор»
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
- Программа для просмотра изображений
Описание
Лабораторная работа №3
Параметризованный абстрактный тип данных «Процессор»
Цель: Сформировать практические навыки: реализации параметризованного абстрактного типа данных с помощью шаблона классов С++.
Задание:
1. В соответствии с приведенной ниже спецификацией реализовать параметризованный абстрактный тип данных «Процессор», используя шаблон классовС++.
2. Протестировать тип данных.
Спецификация типа данных «Процессор».
ADT TProc
Данные
Процессор (тип TProc) выполняет двухоперандные операции TOprtn = (None, Add, Sub, Mul, Dvd) и однооперандные операции - функции TFunc = (Rev, Sqr) над значениями типа T. Левый операнд и результат операции хранится в поле Lop_Res, правый - в поле Rop. Оба поля имеют тип T. Процессор может находиться в состояниях: «операция установлена» - поле Operation не равно None (значение типа TOprtn) или в состоянии «операция не установлена» - поле Operation = None. Значения типа TProc - изменяемые. Они изменяются операциями: «Сброс операции» (OprtnClear), «Выполнить операцию» (OprtnRun), «Вычислить функцию» (FuncRun), «Установить операцию» (OprtnSet), «Установить левый операнд» (Lop_Res_Set), «Установить правый операнд» (Rop_Set), «Сброс калькулятора» (ReSet). На значениях типа T должны быть определены указанные выше операции и функции.
Операции
Конструктор
Начальные значения: Нет
Процесс: Инициализирует поля объекта процессор типа TProc. Поля Lop_Res, Rop инициализируются объектами (тип T) со значениями по умолчанию. Например, для простых дробей - 0/1. Процессор устанавливается в состояние: «операция не установлена»: (Operation = None).
СбросПроцессора
Вход: Нет.
Предусловия: Нет.
Процесс: Поля объекта процессор: Lop_Res, Rop инициализируются объектами (тип T) со значениями по умолчанию. Например, для простых дробей - 0/1. Процессор устанавливается в состояние: «операция не установлена»: (Operation = None).
Выход: Нет.
Постусловия: Состояние процессора – «операция сброшена» (Operation = None).
СбросОперации
Вход: Нет.
Предусловия: Нет.
Процесс Процессор устанавливается в состояние: «операция не установлена»: (Operation = None).
Выход: Нет.
Постусловия: Состояние процессора – «операция сброшена» (Operation = None).
ВыполнитьОперацию
Вход: Нет.
Предусловия: Нет.
Процесс Вызывает выполнение текущей операции (записанной в поле Operation). Операция (Operation) выполняется над значениями, хранящимися в полях Rop и Lop_Res. Результат сохраняется в поле Lop_Res. Если Operation = None, никакие действия не выполняются. Состояние объекта не изменяется.
Выход: Нет.
Постусловия: Состояние процессора не изменяется.
ВычислитьФункцию
Вход: Вид функции (Func: TFunc).
Предусловия: Нет.
Процесс Вызывает выполнение текущей функции (Func). Функция (Func) выполняется над значением, хранящимся в поле Rop. Результат сохраняется в нём же. Состояние объекта не изменяется.
Выход: Нет.
Постусловия: Состояние процессора не меняется.
ЧитатьЛевыйОперанд
Вход: Нет.
Предусловия: Нет.
Процесс Создаёт и возвращает копию объекта, который хранится в поле Lop_Res.
Выход: Объект типа T.
Постусловия: Состояние процессора не изменяется.
ЗаписатьЛевыйОперанд
Вход: Переменная Operand типа T.
Предусловия: Нет.
Процесс Создаёт копию объекта Operand и заносит её в поле Lop_Res.
Выход: Нет.
Постусловия: Состояние процессора не изменяется.
ЧитатьПравыйОперанд
Вход: Нет.
Предусловия: Нет.
Процесс Создаёт и возвращает копию объекта, который хранится в Rop.
Выход: Объект типа T.
Постусловия: Состояние процессора не меняется.
ЗаписатьПравыйОперанд
Вход: Переменная Operand типа T.
Предусловия: Нет.
Процесс Создаёт копию объекта Operand и заносит её в поле Rop.
Выход: Нет.
Постусловия: Состояние процессора не изменяется.
ЧитатьСостояние
Вход: Нет.
Предусловия: Нет.
Процесс Копирует и возвращает значение поля Operation.
Выход: Значение поля Operation.
Постусловия: Состояние процессора не изменяется.
ЗаписатьСостояние
Вход: Переменная Oprtn типа TOprtn.
Предусловия: Нет.
Процесс Заносит значение Oprtn в поле Operation.
Выход: Нет.
Постусловия: Состояние процессора изменяется на Oprtn.
Рекомендации к выполнению
1. Тип данных TProc реализовать, используя шаблон классов С++, template <class T>.
2. Числа храните как поля типа T.
3. Для чтения состояния процессора, полей: «левый операнд-результат» (Lop_Res), «правый операнд» (Rop), используйте свойство (property).
4. Тип данных реализовать в отдельном модуле UProc.
5. В приведённой ниже таблице показана последовательность изменения состояния процессора, если T = TFrac, при вычислении выражения:
2/1 + 3/1 * (4/1)2
Шаг Вход Метод Rop Lop_Res Operation
0 Create 0/1 0/1 None
1 2 0/1 0/1 None
2 + Lop_Res_Set;
OprtnSet 0/1 2/1 Add
3 3 0/1 2/1 Add
4 * Rop_Set;
OprtnRun;
OprtnSet; 3/1 2/1+3/1 Mul
5 4 4/1 2/1+3/1 Mul
6 Sqr Rop_Set;
FuncRun (4/1)^2 2/1+3/1 Mul
7 = OprtnRun (4/1)^2 2/1+3/1* (4/1)^2 Mul
8 C ReSet 0/1 0/1 None
Параметризованный абстрактный тип данных «Процессор»
Цель: Сформировать практические навыки: реализации параметризованного абстрактного типа данных с помощью шаблона классов С++.
Задание:
1. В соответствии с приведенной ниже спецификацией реализовать параметризованный абстрактный тип данных «Процессор», используя шаблон классовС++.
2. Протестировать тип данных.
Спецификация типа данных «Процессор».
ADT TProc
Данные
Процессор (тип TProc) выполняет двухоперандные операции TOprtn = (None, Add, Sub, Mul, Dvd) и однооперандные операции - функции TFunc = (Rev, Sqr) над значениями типа T. Левый операнд и результат операции хранится в поле Lop_Res, правый - в поле Rop. Оба поля имеют тип T. Процессор может находиться в состояниях: «операция установлена» - поле Operation не равно None (значение типа TOprtn) или в состоянии «операция не установлена» - поле Operation = None. Значения типа TProc - изменяемые. Они изменяются операциями: «Сброс операции» (OprtnClear), «Выполнить операцию» (OprtnRun), «Вычислить функцию» (FuncRun), «Установить операцию» (OprtnSet), «Установить левый операнд» (Lop_Res_Set), «Установить правый операнд» (Rop_Set), «Сброс калькулятора» (ReSet). На значениях типа T должны быть определены указанные выше операции и функции.
Операции
Конструктор
Начальные значения: Нет
Процесс: Инициализирует поля объекта процессор типа TProc. Поля Lop_Res, Rop инициализируются объектами (тип T) со значениями по умолчанию. Например, для простых дробей - 0/1. Процессор устанавливается в состояние: «операция не установлена»: (Operation = None).
СбросПроцессора
Вход: Нет.
Предусловия: Нет.
Процесс: Поля объекта процессор: Lop_Res, Rop инициализируются объектами (тип T) со значениями по умолчанию. Например, для простых дробей - 0/1. Процессор устанавливается в состояние: «операция не установлена»: (Operation = None).
Выход: Нет.
Постусловия: Состояние процессора – «операция сброшена» (Operation = None).
СбросОперации
Вход: Нет.
Предусловия: Нет.
Процесс Процессор устанавливается в состояние: «операция не установлена»: (Operation = None).
Выход: Нет.
Постусловия: Состояние процессора – «операция сброшена» (Operation = None).
ВыполнитьОперацию
Вход: Нет.
Предусловия: Нет.
Процесс Вызывает выполнение текущей операции (записанной в поле Operation). Операция (Operation) выполняется над значениями, хранящимися в полях Rop и Lop_Res. Результат сохраняется в поле Lop_Res. Если Operation = None, никакие действия не выполняются. Состояние объекта не изменяется.
Выход: Нет.
Постусловия: Состояние процессора не изменяется.
ВычислитьФункцию
Вход: Вид функции (Func: TFunc).
Предусловия: Нет.
Процесс Вызывает выполнение текущей функции (Func). Функция (Func) выполняется над значением, хранящимся в поле Rop. Результат сохраняется в нём же. Состояние объекта не изменяется.
Выход: Нет.
Постусловия: Состояние процессора не меняется.
ЧитатьЛевыйОперанд
Вход: Нет.
Предусловия: Нет.
Процесс Создаёт и возвращает копию объекта, который хранится в поле Lop_Res.
Выход: Объект типа T.
Постусловия: Состояние процессора не изменяется.
ЗаписатьЛевыйОперанд
Вход: Переменная Operand типа T.
Предусловия: Нет.
Процесс Создаёт копию объекта Operand и заносит её в поле Lop_Res.
Выход: Нет.
Постусловия: Состояние процессора не изменяется.
ЧитатьПравыйОперанд
Вход: Нет.
Предусловия: Нет.
Процесс Создаёт и возвращает копию объекта, который хранится в Rop.
Выход: Объект типа T.
Постусловия: Состояние процессора не меняется.
ЗаписатьПравыйОперанд
Вход: Переменная Operand типа T.
Предусловия: Нет.
Процесс Создаёт копию объекта Operand и заносит её в поле Rop.
Выход: Нет.
Постусловия: Состояние процессора не изменяется.
ЧитатьСостояние
Вход: Нет.
Предусловия: Нет.
Процесс Копирует и возвращает значение поля Operation.
Выход: Значение поля Operation.
Постусловия: Состояние процессора не изменяется.
ЗаписатьСостояние
Вход: Переменная Oprtn типа TOprtn.
Предусловия: Нет.
Процесс Заносит значение Oprtn в поле Operation.
Выход: Нет.
Постусловия: Состояние процессора изменяется на Oprtn.
Рекомендации к выполнению
1. Тип данных TProc реализовать, используя шаблон классов С++, template <class T>.
2. Числа храните как поля типа T.
3. Для чтения состояния процессора, полей: «левый операнд-результат» (Lop_Res), «правый операнд» (Rop), используйте свойство (property).
4. Тип данных реализовать в отдельном модуле UProc.
5. В приведённой ниже таблице показана последовательность изменения состояния процессора, если T = TFrac, при вычислении выражения:
2/1 + 3/1 * (4/1)2
Шаг Вход Метод Rop Lop_Res Operation
0 Create 0/1 0/1 None
1 2 0/1 0/1 None
2 + Lop_Res_Set;
OprtnSet 0/1 2/1 Add
3 3 0/1 2/1 Add
4 * Rop_Set;
OprtnRun;
OprtnSet; 3/1 2/1+3/1 Mul
5 4 4/1 2/1+3/1 Mul
6 Sqr Rop_Set;
FuncRun (4/1)^2 2/1+3/1 Mul
7 = OprtnRun (4/1)^2 2/1+3/1* (4/1)^2 Mul
8 C ReSet 0/1 0/1 None
Дополнительная информация
Уважаемый слушатель, дистанционного обучения,
Оценена Ваша работа по предмету: Современные технологии в программировании (часть 2)
Вид работы: Лабораторная работа 3
Оценка:Зачет
Дата оценки: 18.09.2016
Работа выполнена без фамилии студента, можно сразу отправлять на проверку.
Оценена Ваша работа по предмету: Современные технологии в программировании (часть 2)
Вид работы: Лабораторная работа 3
Оценка:Зачет
Дата оценки: 18.09.2016
Работа выполнена без фамилии студента, можно сразу отправлять на проверку.
Похожие материалы
Лабораторная работа №3. Параметризованный абстрактный тип данных «Процессор» по дисциплине "Современные технологии программирования"
Doctor_Che
: 11 декабря 2013
Цель: Сформировать практические навыки: реализации параметризованного абстрактного типа данных с помощью шаблона классов С++.
Задание:
1. В соответствии с приведенной ниже спецификацией реализовать параметризованный абстрактный тип данных «Процессор», используя шаблон классовС++.
2. Протестировать тип данных.
Спецификация типа данных «Процессор».
ADT TProc
Данные
Процессор (тип TProc) выполняет двухоперандные операции TOprtn = (None, Add, Sub, Mul, Dvd) и однооперандные операции - функции TFun
40 руб.
Современные технологии программирования (часть 2) Лабораторная работа 3 Параметризованный абстрактный тип данных «Процессор»
Эректус
: 20 ноября 2018
Лабораторная работа №3
Параметризованный абстрактный тип данных «Процессор»
Цель
Сформировать практические навыки: реализации параметризованного абстрактного типа данных с помощью шаблона классов С++.
Задание
В соответствии с приведенной ниже спецификацией реализовать параметризованный абстрактный тип данных «Процессор», используя шаблон классов С++.
Протестировать тип данных.
Спецификация типа данных «Процессор».
ADT TProc
Данные
Процессор (тип TProc) выполняет двухоперандные опера
30 руб.
Лабораторная работа. Параметризованный абстрактный тип данных «Память»
AnnaB
: 21 апреля 2013
Цель
Сформировать практические навыки реализации параметризованного абстрактного типа данных с помощью шаблона классов С++.
Задание
1. В соответствии с приведенной ниже спецификацией реализовать параметризованный абстрактный тип данных «память», для хранения одного числа – объекта типа T, используя шаблон классов С++.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «память».
ADT TMemory
Данные
Память (тип TMemory, в да
100 руб.
Лабораторная работа №4 Параметризованный абстрактный тип данных «Память»
VVA77
: 11 апреля 2017
Цель: Сформировать практические навыки реализации параметризованного абстрактного типа данных с помощью шаблона классов С++.
Задание:
1. В соответствии с приведенной ниже спецификацией реализовать параметризованный абстрактный тип данных «память», для хранения одного числа – объекта типа T, используя шаблон классов С++.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «память».
ADT TMemory
Данные
Память (тип TMemory, в даль
80 руб.
Лабораторная работа №4. Параметризованный абстрактный тип данных «Память»
8arracuda
: 22 мая 2016
Цель: Сформировать практические навыки реализации параметризованного абстрактного типа данных с помощью шаблона классов С++.
Задание:
1. В соответствии с приведенной ниже спецификацией реализовать параметризованный абстрактный тип данных «память», для хранения одного числа – объекта типа T, используя шаблон классов С++.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «память».
ADT TMemory
Данные
Память (тип TMemory, в дальн
150 руб.
Лабораторная работа №4 по дисциплине "Современные технологии программирования". Параметризованный абстрактный тип данных «Память»
Doctor_Che
: 29 мая 2013
Цель: Сформировать практические навыки реализации параметризованного абстрактного типа данных с помощью шаблона классов С++.
Задание:
1. В соответствии с приведенной ниже спецификацией реализовать параметризованный абстрактный тип данных «память», для хранения одного числа – объекта типа T, используя шаблон классов С++.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «память».
ADT TMemory
Данные
Память (тип TMemory, в даль
40 руб.
Параметризованный абстрактный тип данных «Память». Лабораторная работа №4 Современные технологии в программировании (часть 1)
rmn77
: 19 октября 2017
Лабораторная работа №4
по дисциплине
«Современные технологии в программировании (часть 1)»
Параметризованный абстрактный тип данных «Память»
Цель: Сформировать практические навыки реализации параметризованного абстрактного типа данных с помощью шаблона классов С++.
Задание:
1. В соответствии с приведенной ниже спецификацией реализовать параметризованный абстрактный тип данных «память», для хранения одного числа – объекта типа T, используя шаблон классов С++.
2. Протестировать каждую операцию, оп
50 руб.
Программирование графических процессоров. Лабораторная работа №3
pleze
: 20 марта 2022
Тема: Работа с потоками CUDA
Задание
1. Прочитайте главы теоретического материала под названиями "Pinned memory" и "Потоки (streams) в CUDA". Ответьте на контрольные вопросы в конце глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Примените потоки для алгоритмов реализованные в лабораторной работе №1.
3. Определите оптимальное количество потоков для матрицы размером 2500x2500 элементов и вектора размером 2500 элементов.
300 руб.
Другие работы
Курсовой проект по дисциплине «Телекоммуникационные системы СЦИ и ПЦИ»
Лесник
: 24 марта 2012
Содержание:
Техническое задание…………………………………………………...с. 3
Исходные данные……………………………………………………….с. 3
1. Разработка схемы телекоммуникационной транспортной сети….с. 6
2. Расчет эквивалентного числа первичных цифровых потоков…..с. 6
3. Выбор типа кабеля…………………………………………………..с. 8
4. Определение типов мультиплексоров в узлах……………………с. 12
5. Определение длины регенерационного участка………………….с. 17
6. Построение схемы организации связи……..……………………..с. 19
7. Разработка схемы синхронизации…………………………………с.
70 руб.
Тепломассообмен ТГАСУ 2017 Задача 1 Вариант 74
Z24
: 2 февраля 2026
Определение мощности электронагревателя для обогрева помещения
Две стены помещения с внутренними размерам, (1 ‒ a·h и 2 ‒ b·h) выложены из красного кирпича толщиной δкп, изолированного с наружной стороны сайдингом толщиной δсд, а с внутренней покрыта слоем штукатурки толщиной δшт.
3 и 4-я стены с размерами (3 ‒ b·h и 4 ‒ a·h) выполнены из панелей толщиной δпн, оштукатуренных с обеих сторон штукатуркой толщиной δшт. Пол и потолок выполнены из железобетонных плит толщиной δжб, где а – длина,
200 руб.
Курсовая работа по дисциплине:Электроника. Семестр 4-й. Вариант № 19
nik12
: 8 июня 2014
Техническое задание на курсовую работу
Произвести электрический расчет и разработать топологию ИМС для схемы №9 (рисунок 1).
Электрический расчет состоит из оценки потенциалов в точках указанных на схеме, расчета токи схемы, расчета мощностей рассеваемых на резисторах и мощности потребляемой всей схемой для комбинаций входных сигналов.
Разработка топологии ИМС включает: выбор материала для пленочных резисторов, расчет размеров всех резисторов, расчет площади, занимаемой активными и пассивными
100 руб.
Инфляционные процессы и антиинфляционная политика
alfFRED
: 25 мая 2013
Оглавление
Введение..........................................................................................3
1. Понятие, социально-экономическая сущность, виды и типы инфляции......................................................................................4
1.1. Понятие, социально-экономическая сущность и причины возникновения инфляции................................................................................4
1.2. Виды и типы инфляции. Взаимосвязь инфляционных процессов с денежным
10 руб.