Современные технологии программирования, Лабораторная работа №1-7, Вариант №7
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Описание
Лабораторная работа №1
Задание
1. Реализовать абстрактный тип данных «р-ичное число», используя класс
Object Pascal,
C++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных, одним из методов тестирования.
Спецификация типа данных «р-ичное число».
ADT TPNumber
Контрольные вопросы:
1. Что такое инкапсуляция?
2. Как синтаксически представлено поле в описании класса?
3. Как синтаксически представлен метод в описании класса?
4. Как синтаксически представлено простое свойство в описании класса?
5. Особенности описания методов класса?
6. Особенности описания и назначение конструктора класса?
7. Видимость идентификаторов в описании класса?
8. Особенности вызова методов применительно к объектам класса?
Лабораторная работа №2
Задание
1. В соответствии с приведенной ниже спецификацией реализовать абстрактный тип данных «р-ичная память», используя класс
• Object Pascal,
• C++.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «р-ичная память».
ADT TMemory
Лабораторная работа №3
1. В соответствии с приведенной ниже спецификацией реализовать абстрактный тип данных «P-ичный процессор», используя класс
• Object Pasca,
• С++.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «P-ичный процессор».
ADT TProc
Лабораторная работа №4
1. Разработать и реализовать класс TEditor «Редактор р-ичных чисел», используя класс
• Object Pascal,
• С++.
На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно обозначить следующим образом:
РедакторР-ичныхЧисел
строка: String
числоЕстьНоль: Boolean
добавитьЗнак: String
добавитьР-ичную цифру(a: Integer): String
добавитьНоль: String
забойСимвола: String
очистить: String
конструктор
читатьСтрокаВформатеСтроки: String (метод свойства)
писатьСтрокаВформатеСтроки(a: String) (метод свойства)
редактировать(a: Integer): String
Обязанность:
ввод, хранение и редактирование строкового представления р-ичных чисел
2. Класс должен отвечать за ввод и редактирование строкового представления р-ичных чисел. Значение р-ичного нуля - ‘0,’. Класс должен обеспечивать:
• добавление символов, соответствующих р-ичным цифрам (р от 2 до 16);
• добавление и изменение знака;
• добавление разделителя целой и дробной частей;
• забой символа, стоящего справа (BackSpace);
• установку нулевого значения числа (Clear);
• чтение строкового представления р-ичного числа;
• запись строкового представления р-ичного числа;
3. Протестировать каждый метод класса.
Контрольные вопросы:
1. Что такое инкапсуляция?
2. Как синтаксически представлено поле в описании класса?
3. Как синтаксически представлен метод в описании класса?
4. Как синтаксически представлено простое свойство в описании класса?
5. Особенности описания методов класса?
6. Особенности описания и назначение конструктора класса?
7. Видимость идентификаторов в описании класса?
8. Особенности вызова методов применительно к объектам класса?
Лабораторная работа №5
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)
конструктор
деструктор
Обязанность:
управление выполнением команд калькулятора
2. Класс должен отвечать за управление выполнением команд калькулятора. Класс должен обеспечивать:
• управление вводом и редактированием р-ичных чисел;
• управление выполнением операций, функций и выражений над р-ичными числами;
• управление выполнением операций по работе с памятью, объёмом в одно значение типа р-ичное число;
• управление работой с системным буфером обмена.
3. Протестировать каждый метод класса и класс в целом.
Контрольные вопросы:
1. Что такое инкапсуляция?
2. Как синтаксически представлено поле в описании класса?
3. Как синтаксически представлен метод в описании класса?
4. Как синтаксически представлено простое свойство в описании класса?
5. Особенности описания методов класса?
6. Особенности описания и назначение конструктора класса?
7. Видимость идентификаторов в описании класса?
8. Особенности вызова методов применительно к объектам класса?
Лабораторная работа №6
Задание
1. Разработать и реализовать класс «Интерфейс калькулятора р-ичных чисел» тип TClcPnl наследник TForm, используя класс
• Object Pascal,
• Builder С++.
На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно обозначить следующим образом:
ИнтерфейсКалькулятораР-ичныхЧисел
строкаР-ичноеЧисло: TStaticText
состояниеПамяти: TStaticText
кнопки ввода: TBitButton
FormCreate(Sender: TObject)
ButtonClick(Sender: TObject)
FormKeyPress(Sender: TObject; var Key: Char)
TrackBar1Change(Sender: TObject)
SetButtns(p: LongInt)
Обязанность:
Обеспечить пользователю возможность управления калькулятором через клавиатуру и командные кнопки для выполнения вычислений
2. Класс должен отвечать:
2.1. за ввод:
• команд редактирования р-ичных чисел,
• команд памяти,
• команд процессора р-ичных чисел;
2.2. отображение:
• вводимого числа,
• результата вычисления,
• состояния памяти;
2.3. класс должен обеспечить возможность:
• ввода перечисленных команд с помощью командных кнопок и клавиатуры;
• выполнение команд для работы с буфером обмена:
• копировать,
• вставить;
2.4. класс должен обеспечить настройки:
• системы счисления в диапазоне от 2 до 16;
• на один из следующих режимов:
• ввод целых числами,
• ввод чисел с целой и дробной частями.
3. Протестировать каждый метод класса.
Контрольные вопросы:
1. Что такое инкапсуляция?
2. Как синтаксически представлено поле в описании класса?
3. Как синтаксически представлен метод в описании класса?
4. Как синтаксически представлено простое свойство в описании класса?
5. Особенности описания методов класса?
6. Особенности описания и назначение конструктора класса?
7. Видимость идентификаторов в описании класса?
8. Особенности вызова методов применительно к объектам класса?
Лабораторная работа №7
Задание:
1. Реализовать тип «полином», в соответствии с приведенной ниже спецификацией.
2. Оттестировать каждую операцию, определенную на типе данных одним из методов тестирования.
3. Оттестировать тип данных в целом.
Спецификация абстрактного типа данных Полином.
ADT TPoly
Контрольные вопросы:
1. Чем определяется размер памяти, выделяемой под экземпляр класса?
2. Что такое RTTI класса?
3. Как и когда происходит связывание объекта с RTTI класса?
4. Как описываются и переопределяются виртуальные и динамические методы?
5. Что такое раннее связывание, и для каких методов оно выполняется?
6. Что такое позднее связывание, и для каких методов оно выполняется?
7. Когда для класса необходимо описать собственный деструктор?
Задание
1. Реализовать абстрактный тип данных «р-ичное число», используя класс
Object Pascal,
C++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных, одним из методов тестирования.
Спецификация типа данных «р-ичное число».
ADT TPNumber
Контрольные вопросы:
1. Что такое инкапсуляция?
2. Как синтаксически представлено поле в описании класса?
3. Как синтаксически представлен метод в описании класса?
4. Как синтаксически представлено простое свойство в описании класса?
5. Особенности описания методов класса?
6. Особенности описания и назначение конструктора класса?
7. Видимость идентификаторов в описании класса?
8. Особенности вызова методов применительно к объектам класса?
Лабораторная работа №2
Задание
1. В соответствии с приведенной ниже спецификацией реализовать абстрактный тип данных «р-ичная память», используя класс
• Object Pascal,
• C++.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «р-ичная память».
ADT TMemory
Лабораторная работа №3
1. В соответствии с приведенной ниже спецификацией реализовать абстрактный тип данных «P-ичный процессор», используя класс
• Object Pasca,
• С++.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «P-ичный процессор».
ADT TProc
Лабораторная работа №4
1. Разработать и реализовать класс TEditor «Редактор р-ичных чисел», используя класс
• Object Pascal,
• С++.
На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно обозначить следующим образом:
РедакторР-ичныхЧисел
строка: String
числоЕстьНоль: Boolean
добавитьЗнак: String
добавитьР-ичную цифру(a: Integer): String
добавитьНоль: String
забойСимвола: String
очистить: String
конструктор
читатьСтрокаВформатеСтроки: String (метод свойства)
писатьСтрокаВформатеСтроки(a: String) (метод свойства)
редактировать(a: Integer): String
Обязанность:
ввод, хранение и редактирование строкового представления р-ичных чисел
2. Класс должен отвечать за ввод и редактирование строкового представления р-ичных чисел. Значение р-ичного нуля - ‘0,’. Класс должен обеспечивать:
• добавление символов, соответствующих р-ичным цифрам (р от 2 до 16);
• добавление и изменение знака;
• добавление разделителя целой и дробной частей;
• забой символа, стоящего справа (BackSpace);
• установку нулевого значения числа (Clear);
• чтение строкового представления р-ичного числа;
• запись строкового представления р-ичного числа;
3. Протестировать каждый метод класса.
Контрольные вопросы:
1. Что такое инкапсуляция?
2. Как синтаксически представлено поле в описании класса?
3. Как синтаксически представлен метод в описании класса?
4. Как синтаксически представлено простое свойство в описании класса?
5. Особенности описания методов класса?
6. Особенности описания и назначение конструктора класса?
7. Видимость идентификаторов в описании класса?
8. Особенности вызова методов применительно к объектам класса?
Лабораторная работа №5
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)
конструктор
деструктор
Обязанность:
управление выполнением команд калькулятора
2. Класс должен отвечать за управление выполнением команд калькулятора. Класс должен обеспечивать:
• управление вводом и редактированием р-ичных чисел;
• управление выполнением операций, функций и выражений над р-ичными числами;
• управление выполнением операций по работе с памятью, объёмом в одно значение типа р-ичное число;
• управление работой с системным буфером обмена.
3. Протестировать каждый метод класса и класс в целом.
Контрольные вопросы:
1. Что такое инкапсуляция?
2. Как синтаксически представлено поле в описании класса?
3. Как синтаксически представлен метод в описании класса?
4. Как синтаксически представлено простое свойство в описании класса?
5. Особенности описания методов класса?
6. Особенности описания и назначение конструктора класса?
7. Видимость идентификаторов в описании класса?
8. Особенности вызова методов применительно к объектам класса?
Лабораторная работа №6
Задание
1. Разработать и реализовать класс «Интерфейс калькулятора р-ичных чисел» тип TClcPnl наследник TForm, используя класс
• Object Pascal,
• Builder С++.
На Унифицированном языке моделирования UML (Unified Modeling Language) наш класс можно обозначить следующим образом:
ИнтерфейсКалькулятораР-ичныхЧисел
строкаР-ичноеЧисло: TStaticText
состояниеПамяти: TStaticText
кнопки ввода: TBitButton
FormCreate(Sender: TObject)
ButtonClick(Sender: TObject)
FormKeyPress(Sender: TObject; var Key: Char)
TrackBar1Change(Sender: TObject)
SetButtns(p: LongInt)
Обязанность:
Обеспечить пользователю возможность управления калькулятором через клавиатуру и командные кнопки для выполнения вычислений
2. Класс должен отвечать:
2.1. за ввод:
• команд редактирования р-ичных чисел,
• команд памяти,
• команд процессора р-ичных чисел;
2.2. отображение:
• вводимого числа,
• результата вычисления,
• состояния памяти;
2.3. класс должен обеспечить возможность:
• ввода перечисленных команд с помощью командных кнопок и клавиатуры;
• выполнение команд для работы с буфером обмена:
• копировать,
• вставить;
2.4. класс должен обеспечить настройки:
• системы счисления в диапазоне от 2 до 16;
• на один из следующих режимов:
• ввод целых числами,
• ввод чисел с целой и дробной частями.
3. Протестировать каждый метод класса.
Контрольные вопросы:
1. Что такое инкапсуляция?
2. Как синтаксически представлено поле в описании класса?
3. Как синтаксически представлен метод в описании класса?
4. Как синтаксически представлено простое свойство в описании класса?
5. Особенности описания методов класса?
6. Особенности описания и назначение конструктора класса?
7. Видимость идентификаторов в описании класса?
8. Особенности вызова методов применительно к объектам класса?
Лабораторная работа №7
Задание:
1. Реализовать тип «полином», в соответствии с приведенной ниже спецификацией.
2. Оттестировать каждую операцию, определенную на типе данных одним из методов тестирования.
3. Оттестировать тип данных в целом.
Спецификация абстрактного типа данных Полином.
ADT TPoly
Контрольные вопросы:
1. Чем определяется размер памяти, выделяемой под экземпляр класса?
2. Что такое RTTI класса?
3. Как и когда происходит связывание объекта с RTTI класса?
4. Как описываются и переопределяются виртуальные и динамические методы?
5. Что такое раннее связывание, и для каких методов оно выполняется?
6. Что такое позднее связывание, и для каких методов оно выполняется?
7. Когда для класса необходимо описать собственный деструктор?
Дополнительная информация
Уважаемый слушатель, дистанционного обучения,
Оценена Ваша работа по предмету: Современные технологии в программирования
Вид работы: Лабораторная работа 1-7
Оценка:Зачет
Дата оценки: 05.03.2016
Оценена Ваша работа по предмету: Современные технологии в программирования
Вид работы: Лабораторная работа 1-7
Оценка:Зачет
Дата оценки: 05.03.2016
Похожие материалы
Современные технологии программирования Лабораторная работа №1. Вариант №7
Znich
: 3 июня 2018
Задание
1. Реализовать абстрактный тип данных «р-ичное число», используя класс
Object Pascal, C++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных, одним из методов тестирования.
Спецификация типа данных «р-ичное число».
ADT TPNumber
ДанныеР-ичное число TPNumber - это действительное число (n) со знаком в системе счисления с основанием (b) (b в диапазоне 2..16), содержащее целую и дробную части. Точность представления числа c (c >=
150 руб.
Лабораторные работы №1-7 по дисциплине: Современные технологии программирования. Вариант №7.
teacher-sib
: 27 ноября 2016
Лабораторная работа №1
Абстрактный тип данных «комплексное число»
Тема: Классы Object Pascal, С++
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов Object Pascal, С++. Синтаксис классов: инкапсуляция, простые свойства.
Задание
1. Реализовать абстрактный тип данных «комплексное число», используя класс
• Object Pascal,
• С++,
в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, опр
1000 руб.
Лабораторная работа №1 по Современные технологии программирования
zalexz95
: 17 октября 2017
Visual C++
Лабораторная работа. Абстрактный тип данных простая дробь
1. Реализовать абстрактный тип данных «простая дробь», используя класс С++ в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «простые дроби».
ADT TFrac
Данные
Простая дробь (тип TFrac) - это пара целых чисел: числитель и знаменатель (a/b). Простые дроби изменяемые.
200 руб.
Лабораторная работа №1. Современные технологии программирования
Lampa
: 14 января 2014
на тему «Абстрактный тип данных (ADT) p - ичное число»
Задание
1. Реализовать абстрактный тип данных «р-ичное число», используя класс
Object Pascal, C++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных, одним из методов тестирования.
Спецификация типа данных «р-ичное число».
ADT TPNumber
ДанныеР-ичное число TPNumber - это действительное число (n) со знаком в системе счисления с основанием (b) (b в диапазоне 2..16), содержащее цел
39 руб.
Современные технологии программирования ЛАБОРАТОРНЫЕ работы №№1-4
vastenin
: 10 июня 2019
Лабораторная работа №1 Абстракция данных «простая дробь»
Лабораторная работа №2 Абстракция данных «р-ичное число»
Лабораторная работа №3 Абстракция данных «комплексное число»
Лабораторная работа №4 Параметризованный абстрактный тип данных «Память»
Введение
Целями данного лабораторного практикума является формирование практических навыков:
проектирования программ в технологии «абстрактных типов данных»;
реализации абстрактных типов данных с помощью классов С++;
использования библиотеки визуа
17 руб.
Современные технологии программирования. Лабораторные работы №№1-3
platochek
: 14 октября 2018
Лабораторная работа 1. Абстрактный тип данных простая дробь
Цель
Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание
1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования
Спецификация типа данных «простые дроби».
Рекомендации к выполнению
1. Т
200 руб.
Лабораторная работа №1 по дисциплине Современные технологии программирования
Некто
: 16 сентября 2018
Лабораторная работа. Абстрактный тип данных «комплексное число»
Тема: Классы Object Pascal, С++
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов Object Pascal, С++. Синтаксис классов: инкапсуляция, простые свойства.
Задание
1.Реализовать абстрактный тип данных «комплексное число», используя класс
Object Pascal,
С++,
в соответствии с приведенной ниже спецификацией.
2.Протестировать каждую операцию, определенну
100 руб.
Современные технологии программирования. Лабораторные работы №1-5
dsimav
: 28 января 2018
Лабораторная работа №1 Абстрактный тип данных (ADT) Множество (на шаблоне)
Лабораторная работа №2 Класс «редактор»
Лабораторная работа №3 Параметризованный абстрактный тип данных «Процессор»
Лабораторная работа №4 Управление калькулятором
Лабораторная работа №5 Панель управления калькулятором (Интерфейс)
300 руб.
Другие работы
Технико-экономические мероприятия по повышению прибыли и рентабельности предприятия ОАО "КФ "Слодыч"
alfFRED
: 15 ноября 2013
Совершенствование организационной структуры ОАО
“Кондитерская фабрика “Слодыч”
Для увеличения объемов продаж ОАО “Кондитерская фабрика “Слодыч” открывает свои отделы прямых продаж по регионам. С учетом того, что торговая сеть по Республике расширяется, необходимо проводить маркетинговые исследования, широкую рекламу продукции. Мои предложения по усовершенствованию существующей организационной структуры предприятием:
1. Переподчинить отдел маркетинга и стратегического развития заместит
10 руб.
Гидравлика УрИ ГПС МЧС Задание 7 Вариант 38
Z24
: 27 марта 2026
Ответить на теоретические вопросы:
Каковы причины возникновения гидравлического удара? Как изменяется во времени давление у задвижки при гидравлическом ударе? Что такое прямой и непрямой гидравлический удар?
Как рассчитать величину повышения давления в трубопроводе при прямом и непрямом гидравлическом ударе? Отчего зависит скорость ударной волны? Приведите примеры возникновения гидравлического удара при эксплуатации пожарной техники. Как можно уменьшить или предотвратить ударное повышение да
120 руб.
Ролик съемный-Чертеж-Оборудование для бурения нефтяных и газовых скважин-Курсовая работа-Дипломная работа
as.nakonechnyy.92@mail.ru
: 24 июня 2016
Ролик съемный-(Формат Компас-CDW, Autocad-DWG, Adobe-PDF, Picture-Jpeg)-Чертеж-Оборудование для бурения нефтяных и газовых скважин-Курсовая работа-Дипломная работа
290 руб.
Москва в дни Отечественной войны 1812 года
Qiwir
: 26 августа 2013
План: 1. Москва в первые месяцы наполеоновского нашествия на Россию.
2. Французы в Москве.
1)С начала войны с Наполеоном и особенно после того, как французкие войскавзяли в августе Смоленск, Москва жила напряжённой жизнью. Город принимал раненыхвоинов; работал пороховой завод, москвичи ковали сабли и пики. Москва вошла вчисло городов шестнадцати губерний, где создавалось ополчение. 26 августа грянуло Бородинское сражение, но русская армия продолжала отсту-пать. 28 августа начался массовый исхо
10 руб.