Современные технологии программирования. Лабораторная работа №5. Вариант: 8

Цена:
300 руб.

Состав работы

material.view.file_icon
material.view.file_icon
material.view.file_icon UControl.pas
material.view.file_icon UEditor.pas
material.view.file_icon UMemory.pas
material.view.file_icon UPNumber.pas
material.view.file_icon UProc.pas
material.view.file_icon Отчет.doc
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
  • Microsoft Word

Описание

Лабораторная работа No5. Управление калькулятором р-ичных чисел
Тема: Классы Object Pascal, С++
Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного программирования Object Pascal, С++.

Задание
1.Разработать и реализовать класс “Управление калькулятором р-ичных чисел” тип TCtrl, используя класс
•Object Pascal,
•С++.

На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно описатьть следующим образом:

УправлениеКалькуляторомР-ичныхЧисел (тип TCtrl)
состояниеКалькулятора: TCtrlState
редактор: TEditor
процессор: TProc
память: TMemory
число: TPNumber
выполнитьКомандуКалькулятора(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)
конструктор
деструктор
Обязанность:
управление выполнением команд калькулятора

1.Класс должен отвечать за управление выполнением команд калькулятора. Класс должен обеспечивать:
•управление вводом и редактированием р-ичных чисел;
•управление выполнением операций, функций и выражений над р-ичными числами;
•управление выполнением операций по работе с памятью, объёмом в одно значение типа р-ичное число;
•управление работой с системным буфером обмена.

1.Протестировать каждый метод класса и класс в целом.

Рекомендации к выполнению
1.Класс TCtrl реализуйте в отдельном модуле UControl.
2.В модуле опишите перечисляемый тип TCtrlState = (cStart, cEditing, FunDone, cValDone, cExpDone, cOpChange, cError) для обозначения состояний калькулятора: cStart (Начальное), cEditing (Ввод и редактирование), cExpDone (Выражение вычислено), cOpDone (Операция выполнена), cValDone (Значение введено), cOpChange (Операция изменена),. cError (Ошибка).
3.В классе опишите следующие атрибуты:
•“редактор” - объект типа TEditior;
•“процессор” - объект типа TProc (TCalc в предыдущей редакции);
•“память” - объект типа TMemory;
•“состояние калькулятора” - тип TCtrlState;
•“число” - объект типа TPNumber (результат выполнения последней команды).

1.Набор основных операций класса определяется набором команд калькулятора, заданных пользователем. Кроме того, в классе будут определены вспомогательные операции, обеспечивающие реализацию основных операций. В классе опишите следующие операции:
•“выполнитьКомандуКалькулятора” (управляет вызовом операций по работе с объектами: редактор (поле TEditor), процессор (поле TProc), память (поле TMemory), буфер обмена (глобальный объект ClipBoard)), операция получает целое число (номер команды пользователя), строку для буфера обмена, строку со значением состояния памяти и возвращает строку для буфера обмена, строку состояния памяти и строку результата;
•“выполнитьКомандуРедактора” (управляет вызовом методов объекта редактор (тип TEditor)), операция получает целое число (номер команды пользователя и возвращает строку результата;
•“выполнитьОперацию” (управляет вызовом методов объекта процессор (поле TProc)), операция получает целое число (номер команды пользователя и возвращает строку результата;
•“выполнитьФункцию” (управляет вызовом методов объекта процессор (поле TProc)), операция получает целое число (номер команды пользователя и возвращает строку результата;
•“вычислитьОперацию” (управляет вызовом методов объекта процессор (поле TProc)), операция получает целое число (номер команды пользователя и возвращает строку результата;
•“вычислитьВыражение” (управляет вызовом методов объекта процессор (поле TProc)), операция получает целое число (номер команды пользователя и возвращает строку результата;
•“установитьНачальноеСостояниеКалькулятора” (управляет вызовом методов для перевода объекта типа TCalc в состояние Start (см. ниже), операция получает целое число (номер команды пользователя и возвращает строку результата;
•“выполнитьКомандуПамяти” (управляет вызовом методов объекта типа TCtrl, обеспечивающих выполнение команд памяти), операция получает целое число (номер команды пользователя), строку со значением состояния памяти и возвращает строку состояния памяти и строку результата;

“очистить память” (обеспечивает выполнение команды MC памяти), операция получает строку со значением состояния памяти и возвращает строку состояния памяти и строку результата;
“записать в память” (обеспечивает выполнение команды MS памяти), операция получает строку со значением состояния памяти и возвращает строку состояния памяти и строку результата;
“считать из памяти” (обеспечивает выполнение команды MR памяти), операция получает строку со значением состояния памяти и возвращает строку состояния памяти и строку результата;
“добавить к числу в памяти” (обеспечивает выполнение команды M+ памяти), операция получает строку со значением состояния памяти и возвращает строку состояния памяти и строку результата;

•“выполнитьКомандуБуфераОбмена” (управляет вызовом методов объекта типа TClipBoard, обеспечивающих выполнение команд буфера обмена), операция получает целое число (номер команды пользователя), строку со значением буфера обмена и возвращает строку со значением буфера обмена и строку результата;

“записатьВБуферОбмена” (обеспечивает выполнение команды Вставить), операция возвращает строку со значением числа и строку результата;
“читатьИзБуферОбмена” (обеспечивает выполнение команды Копировать), операция получает строку со значением числа и строку результата;

• “сменить основание системы счисления”, операция получает новое значение основания системы счисления и возвращает строку, содержащую отображаемое число в новой системе счисления;
•“читать | писать состояние калькулятора”, возвращает значение типа TCtrlState (свойство, опирающееся на поле);
•“конструктор”, осуществляет создание объектов и инициализацию полей класса;
•“деструктор”, осуществляет освобождение памяти, занимаемой объектом класса и объектами, указатели на которые хранятся в полях объекта: “Редактор”, “Процессор”, “Память”, “Число”.

Рекомендации к выполнению

Логика работы объекта “управление калькулятором” класс TCtrl может быть описана с помощью таблицы переходов, которая отражает изменение состояния калькулятора и результат работы объекта под действием команд пользователя. Таблица переходов строится на основе анализа прецедентов (вариантов использования), приведённых в спецификации.

Для построения таблицы переходов необходимо:
1.проанализировать спецификацию, приведённую в задании для калькулятора р-ичных чисел и выделить состояния калькулятора, например: Start (Начальное), Editing (Ввод и редактирование), ExpDone (Выражение вычислено), FunDone (Функция выполнена), ValDone (Значение введено), OpChange (смена операрации), Error (ошибка);
2.построить таблицу состояний следующего вида (данные во вложении)

1.На основе таблицы состояний постройте таблицу переходов для калькулятора.
Диаграмма классов для Управления калькулятором р-ичных чисел представлено на рисунке ниже (см.вложение).

Содержание отчета

1.Задание.
2.Текст программы.
3.Тестовые наборы данных для тестирования класса.

Контрольные вопросы

1.Что такое инкапсуляция?
2.Как синтаксически представлено поле в описании класса?
3.Как синтаксически представлен метод в описании класса?
4.Как синтаксически представлено простое свойство в описании класса?
5.Особенности описания методов класса?
6.Особенности описания и назначение конструктора класса?
7.Видимость идентификаторов в описании класса?
8.Особенности вызова методов применительно к объектам класса?

Дополнительная информация

Работа была зачтена с первого раза в 2014г.
Преподаватель: Зайцев М.Г.
Лабораторная работа №5 по Современные технологии программирования
Лабораторная работа. Параметризованный абстрактный тип данных «Процессор». 1. В соответствии с приведенной ниже спецификацией реализовать параметризованный абстрактный тип данных «Процессор», используя шаблон классов С++. 2. Протестировать тип данных. Спецификация типа данных «Процессор». ADT TProc
User zalexz95 : 17 октября 2017
200 руб.
Лабораторная работа №5 по Современные технологии программирования
Современные технологии программирования. Лабораторная работа №5
Управление калькулятором р-ичных чисел 1. Разработать и реализовать класс «Управление калькулятором р-ичных чисел» тип TCtrl, используя класс • Object Pascal, • С++. На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно описатьть следующим образом: 2. Класс должен отвечать за управление выполнением команд калькулятора. Класс должен обеспечивать: • управление вводом и редактированием р-ичных чисел; • управление выполнением операций, функций и выражений над р-ичны
User bvv1975 : 26 января 2016
20 руб.
Лабораторная работа №5. Современные технологии программирования
на тему «Управление калькулятором p-ичных чисел» Задание 1. Разработать и реализовать класс «Управление калькулятором р-ичных чисел» тип TCtrl, используя класс • Object Pascal, • С++. На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно описатьть следующим образом: УправлениеКалькуляторомР-ичныхЧисел (тип TCtrl) состояниеКалькулятора: TCtrlState редактор: TEditor процессор: TProc память: TMemory число: TPNumber выполнитьКомандуКалькулят
User Lampa : 14 января 2014
39 руб.
Лабораторная работа №5 по дисциплине Современные технологии программирования
Задание 1.Разработать и реализовать класс «Управление калькулятором комплексных чисел» тип TCtrl, используя класс Object Pascal, С++. На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно обозначить следующим образом: УправлениеКалькуляторомКомплексныхЧисел (тип TCtrl) состояниеКалькулятора: TCtrlState редактор: TEditor процессор: TProc память: TMemory число: TComplex выполнитьКомандуКалькулятора(a: Integer; var b, MState: String): String
User Некто : 16 сентября 2018
100 руб.
Лабораторная работа №5 по предмету "Современные технологии программирования"
1. Задание. 1. Разработать и реализовать класс «Управление калькулятором р-ичных чисел» тип TCtrl, используя класс • Object Pascal, • С++. На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно описатьть следующим образом:
User migsvet : 19 октября 2014
100 руб.
Лабораторная работа № 5 по дисциплине "Современные технологии программирования"
Задание: 1. Разработать и реализовать класс «Управление калькулятором простых дробей» тип TCtrl, используя Object Pascal, С++. На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно обозначить следующим образом: 2. Класс должен отвечать за управление выполнением команд калькулятора. Класс должен обеспечивать: • управление вводом и редактированием простых дробей; • управление выполнением операций, функций и выражений над простыми дробями; • управление выполнением
User 1231233 : 23 января 2012
23 руб.
Современные технологии программирования Лабораторная работа №5. Вариант №7
Задание 1. Разработать и реализовать класс «Управление калькулятором р-ичных чисел» тип TCtrl, используя класс • Object Pascal, • С++. На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно описатьть следующим образом: УправлениеКалькуляторомР-ичныхЧисел (тип TCtrl) состояниеКалькулятора: TCtrlState редактор: TEditor процессор: TProc память: TMemory число: TPNumber выполнитьКомандуКалькулятора(a: Integer; var b, MState: String): String в
User Znich : 3 июня 2018
150 руб.
Лабораторная работа №5. Современные технологии программирования. 20-й вариант
Лаб 5. Задание 1. Разработать и реализовать класс «Управление калькулятором комплексных чисел» тип TCtrl, используя класс • Object Pascal, • С++. На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно обозначить следующим образом:
User Despite : 11 ноября 2015
60 руб.
Проект одноковшового погрузчика с челюстным захватом на базе трактора Т-150К
Введение Патентный поиск Определение основных параметров Расчет элементов рабочего оборудования Расчет производительности Расчет устойчивости Техника безопасности Список литературы Основное назначение одноковшовых погрузчиков в строительстве – выполнение различных погрузочных операций с сыпучими, кусковыми и штучными грузами. В последнее время увеличение мощности и рабочих усилий этих машин расширило область их применения. Сейчас они успешно используются не только для погрузки в карьерах сыпуч
User GnobYTEL : 5 февраля 2012
44 руб.
Проект одноковшового погрузчика с челюстным захватом на базе трактора Т-150К
Лабораторные работы 1-3 по дисциплине: Беспроводные технологии передачи данных. Вариант №5
Лабораторная работа No1 Цель работы: Ознакомиться со средой моделирования динамических систем Scicos. Научиться создавать простые модели, настраивать их параметры и параметры блоков. Задание С помощью динамической модели в программе Scicos вычислить значения заданной по варианту функции, построить графики зависимостей на экране осциллографа и графопостроителя. Обеспечить вывод результата на цифровой дисплей и в рабочую область ScicosLab. Исходные данные: номер функции – 5, шаг изменения арг
User IT-STUDHELP : 14 ноября 2022
900 руб.
Лабораторные работы 1-3 по дисциплине: Беспроводные технологии передачи данных. Вариант №5 promo
Композиция геометрических тел. Вариант 5.
ГРАФИЧЕСКАЯ РАБОТА №3 Название работы: «Композиция геометрических тел» Построить в трёх проекциях группу геометрических тел, взаимное расположение которых представлено на горизонтальной проекции и на наглядном изображении (на чертеже снизу). Из каких тел состоит композиция показано в верхней части задания. Размеры по вариантам. чертеж и 3д модель компасе 20 + дополнительно сохранены в компас 11 и в джпг Файлы компаса можно просматривать и сохранять в нужный формат бесплатной программой КОМПА
User Laguz : 14 марта 2025
100 руб.
Композиция геометрических тел. Вариант 5.
Теплотехника МГУПП 2015 Задача 3.1 Вариант 09
Во сколько раз уменьшатся потери теплоты излучением в окружающую среду от изолированного паропровода длиной 1 м по сравнению с неизолированным (рис. 2), если: внутренний диаметр трубопровода d1; наружный диаметр трубопровода d2; диаметр изолированного трубопровода d3; степень черноты трубопровода εт; степень черноты поверхности теплоизоляционного слоя εти; температура поверхности теплоизоляционного слоя tти; температура поверхности трубопровода tт.
User Z24 : 7 января 2026
150 руб.
Теплотехника МГУПП 2015 Задача 3.1 Вариант 09
up Наверх