Страницу Назад
Поискать другие аналоги этой работы
150 Лабораторная работа №3. Параметризованный абстрактный тип данных «Процессор»ID: 173291Дата закачки: 25 Сентября 2016 Продавец: 8arracuda (Напишите, если есть вопросы) Посмотреть другие работы этого продавца Тип работы: Работа Лабораторная Сдано в учебном заведении: СибГУТИ Описание: Лабораторная работа №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 Комментарии: Уважаемый слушатель, дистанционного обучения, Оценена Ваша работа по предмету: Современные технологии в программировании (часть 2) Вид работы: Лабораторная работа 3 Оценка:Зачет Дата оценки: 18.09.2016 Работа выполнена без фамилии студента, можно сразу отправлять на проверку. Размер файла: 204,5 Кбайт Фаил: ![]()
Скачано: 5 Коментариев: 0 |
||||
Есть вопросы? Посмотри часто задаваемые вопросы и ответы на них. Опять не то? Мы можем помочь сделать! Некоторые похожие работы:Лабораторная работа №3. Параметризованный абстрактный тип данных «Процессор» по дисциплине "Современные технологии программирования"Современные технологии программирования. Пять лабораторных + Курсовая работа. Вариант 12. Калькулятор простых дробей. Современные технологии программирования. Пять лабораторных + Курсовая работа. Вариант 16. Калькулятор простых дробей. Современные технологии программирования (часть 2) Лабораторная работа 3 Параметризованный абстрактный тип данных «Процессор» Современные технологии в программировании (часть 2) Лабораторная работа №№1-5 Вариант 12 Современные технологии программирования. Лабораторные работы №1-5 Ещё искать по базе с такими же ключевыми словами. |
||||
Не можешь найти то что нужно? Мы можем помочь сделать! От 350 руб. за реферат, низкие цены. Спеши, предложение ограничено ! |
Вход в аккаунт:
Страницу Назад
Cодержание / Современные технологии программирования / Лабораторная работа №3. Параметризованный абстрактный тип данных «Процессор»
Вход в аккаунт: