Страницу Назад
Поискать другие аналоги этой работы
100 Современные технологии программирования. Лабораторные 1-5. Калькулятор простых дробейID: 187514Дата закачки: 08 Января 2018 Продавец: RedSunrise (Напишите, если есть вопросы) Посмотреть другие работы этого продавца Тип работы: Работа Лабораторная Форматы файлов: Delphi Сдано в учебном заведении: СибГУТИ Описание: Задание 1. Реализовать абстрактный тип данных “простая дробь”, используя классы Object Pascal, С++ в соответствии с приведенной ниже спецификацией. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования. Спецификация типа данных “простые дроби”. ADT TFrac Данные Простая дробь (тип TFrac) - это пара целых чисел: числитель и знаменатель (a/b). Простые дроби изменяемые. Операции Операции могут вызываться только объектом простая дробь (тип TFrac), указатель на который в них передаётся по умолчанию. При описании операций этот объект называется “сама дробь”. Задание 1. В соответствии с приведенной ниже спецификацией реализовать абстрактный тип данных “память для простых дробей”, используя класс • Object Pascal, • C++. 1. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования. Спецификация типа данных “память для простых дробей”. ADT TMemory Данные Память для простых дробей (тип TMemory, в дальнейшем - память) - это память для хранения объекта “простая дробь” (тип TFrac) и значения “состояние памяти”. Объект “память для простых дробей” - изменяемый. Он имеет два состояния, обозначаемых значениями: “Включена” (_On), “Выключена” (_Off). Её изменяют операции: Записать (Store), Добавить (Add), Очистить (Clear). Спецификация типа данных “Процессор простых дробей”. ADT TProc Данные Процессор простых дробей (тип TProc) выполняет двухоперандные операции TOprtn = (None, Add, Sub, Mul, Dvd) и однооперандные операции - функции TFunc = (Rev, Sqr). Если операция или функция не может быть выполнена, в поле Error типа String заносится сообщение об ошибке. Левый операнд и результат операции хранится в поле Lop_Res, правый - в поле Rop. Оба поля имеют тип TFrac. Процессор может находиться в состоянии “операция установлена”: поле Operation не равно None (значение типа TOprtn) или в состоянии операция не установлена: поле Operation = None. Значения типа TProc - изменяемые. Они изменяются операциями: Сброс операции (OprtnClear), Выполнить операцию (OprtnRun), Вычислить функцию (FuncRun), Установить операцию (OprtnSet), Установить левый операнд (Lop_Res_Set), Установить правый операнд (Rop_Set), Сброс калькулятора (ReSet). На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно обозначить следующим образом: РедакторПростыхДробей строка: String дробьЕстьНоль: Boolean добавитьЗнак: String добавитьЦифру(a: Integer): String добавитьНоль: String забойСимвола: String очистить: String конструктор читатьСтрокаВформатеСтроки: String (метод свойства) писатьСтрокаВформатеСтроки(a: String) (метод свойства) редактировать(a: Integer): String Обязанность: ввод, хранение и редактирование строкового представления простых дробей. 2. Класс должен отвечать за посимвольный ввод, хранение и редактирование строкового представления простых дробей. Значение нуля - ‘0|1’. Класс должен обеспечивать: • добавление цифры; • добавление и изменение знака; • добавление разделителя целой и дробной частей; • забой символа, стоящего справа (BackSpace); • установку нулевого значения числа (Clear); • чтение строкового представления простой дроби; • запись строкового представления простой дроби. 2. Протестировать каждый метод класса. На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно обозначить следующим образом: УправлениеКалькуляторомПростыхДробей (тип TCtrl) состояниеКалькулятора: TCtrlState редактор: TEditor процессор: TProc память: TMemory число: TFrac выполнитьКомандуКалькулятора(a: Integer; var b, MState: String): String выполнитьКомандуРедактора(a: Integer): String выполнитьОперацию(a: Integer): String выполнитьФункцию(a: Integer): String вычислитьВыражение(a: Integer): String установитьНачальноеСостояниеКалькулятора(a: Integer): String выполнитьКомандуюПамяти(a: Integer; var MState: String): String очиститьПамять(var MState: String): String записатьВПамять(var MState: String): String считатьИзПамяти(var MState: String): String добавитьКЧислуВПамяти(var MState: String): String читатьПисатьСостояниеКалькулятора: TCtrlState (свойство, опирающееся на поле) выполнитьКомандуБуфераОбмена(a: Integer; var b: String): String записатьВБуферОбмена(a: Integer; var b: String): String читатьИзБуферОбмена(a: Integer; var b: String): String сменитьОснованиеСистемыСчисления(b: integer; var s:String) конструктор деструктор Обязанность: управление выполнением команд калькулятора 2. Класс должен отвечать за управление выполнением команд калькулятора. Класс должен обеспечивать: • управление вводом и редактированием простых дробей; • управление выполнением операций, функций и выражений над простыми дробями; • управление выполнением операций по работе с памятью, объёмом в одно значение типа простая дробь; • управление работой с системным буфером обмена. 2. Протестировать каждый метод класса и класс в целом. Размер файла: 1,7 Мбайт Фаил: (.rar)
Скачано: 1 Коментариев: 0 |
||||
Есть вопросы? Посмотри часто задаваемые вопросы и ответы на них. Опять не то? Мы можем помочь сделать! Некоторые похожие работы:Современные технологии программирования. Восемь лабораторных + Курсовая работа. Вариант 14. Калькулятор простых дробей.Современные технологии программирования. Пять лабораторных + Курсовая работа. Вариант 12. Калькулятор простых дробей. Лабораторная работа №3 по дисциплине "Современные технологии программирования". Современные технологии программирования. Лабораторная работа №5. Управление калькулятором простых дробей. Современные технологии программирования. Лабораторная работа №6. Интерфейс калькулятора простых дробей. Современные технологии программирования. Пять лабораторных + Курсовая работа. Вариант 16. Калькулятор простых дробей. Ещё искать по базе с такими же ключевыми словами. |
||||
Не можешь найти то что нужно? Мы можем помочь сделать! От 350 руб. за реферат, низкие цены. Спеши, предложение ограничено ! |
Вход в аккаунт:
Страницу Назад
Cодержание / Современные технологии программирования / Современные технологии программирования. Лабораторные 1-5. Калькулятор простых дробей
Вход в аккаунт: