Современные технологии программирования (часть 2) Лабораторная работа 2
Состав работы
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Лабораторная работа №2.
Редактор чисел в системе счисления с основанием р.
Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#.
Задание 1
1. Разработать и реализовать класс Editor «Редактор действительных чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с команды добавить 0 целыми числами от 0. При реализации интерфейса номера команд удобно хранить в свойстве Tag, которое имеется у визуальных компонентов.
Атрибуты и операции класс представлены на рисунке 10.
Рисунок 10 - Атрибуты и операции класса
2. Ответственность класса Editor (редактор) – хранение, ввод и редактирование строкового представления числа, представленного в системе счисления с основанием p. Класс должен обеспечивать: добавление символов (AddDigit), соответствующих р-ичным цифрам (р от 2 до 16); добавления нуля (AddZero()); добавление разделителя целой и дробной частей (AddDelim()); забой символа - удаление символа, стоящего справа (BS); очистку - установку нулевого значения числа (Clear); чтение строкового представления р-ичного числа (Number).
3. Протестировать каждый метод класса.
Рекомендации к выполнению
Описание класса может выглядеть следующим образом:
namespace Конвертор
{
class Editor
{
//Поле для хранения редактируемого числа.
string number = "";
//Разделитель целой и дробной частей.
const string delim = ".";
//Ноль.
const string zero = "0";
//Свойствое для чтения редактируемого числа.
public string Number
{ get { } }
//Добавить цифру.
public string AddDigit(int n) { }
//Точность представления результата.
public int Acc(){ }
//Добавить ноль.
public string AddZero(){ }
//Добавить разделитель.
public string AddDelim(){ }
//Удалить символ справа.
public string Bs() { }
//Очистить редактируемое число.
public string Clear() { }
//Выполнить команду редактирования.
public string DoEdit(int j) { }
}
}
Класс сохраните в файле Editor. В разделе описания констант опишите следующие константы: «разделитель целой и дробной частей» строкового типа; «строковое представление нуля» строкового типа.
Содержание отчета
1. Задание.
2. Текст программы.
3. Тестовые наборы данных для тестирования класса.
Контрольные вопросы
1. В чём состоит особенность раздела описания класса с уровнем доступа protected?
2. В чём состоит особенность раздела описания класса с уровнем доступа private?
3. В чём состоит особенность раздела описания класса с уровнем доступа public?
4. В чём состоит особенность инициализации полей ссылочного типа и констант в конструкторе?
5. Что такое this?
6. Как описываются поля в классах?
7. Какой операцией создаются объекты классов?
8. Как вызвать нестатический метод класса?
Класс История.
Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного программирования языка C#; использования библиотечного класса обобщённой коллекции List<> для обработки данных.
Задание 2
1. Разработать и реализовать класс History «История», используя класс языка C#. Класс отвечает за документирование выполнения пользователем переводов чисел. Объекты класса хранят исходные числа, результаты преобразования и основания систем счисления исходного числа и результата.
Атрибуты и операции класса представлены таблице 3.
Таблица 3 - Атрибуты и операции класса «История»
История
Запись(i: integer): String;
ДобавитьЗапись(a: String);
Записей(): integer
ОчиститьИсторию();
Обязанность: ввод, вывод, хранение данных введённых пользователем и полученных результатов.
2. Класс должен отвечать за ввод, вывод, хранение данных введённых пользователем и полученных результатов. Класс должен обеспечивать:
• добавление записи (ДобавитьЗапись) - строки, содержащей введённое пользователем число, результат его преобразования и основания систем счисления исходной и той, в которую число преобразовано;
• извлечение записи по её номеру в списке (Запись);
• очистка списка (ОчиститьИсторию);
• конструктор (Запись);
• текущий размер списка в числе записей (Записей);
3. Протестировать каждый метод класса.
Рекомендации к выполнению
1. Создайте консольное приложение, в которое добавьте класс History и сохраните его в файле History.
2. В этот же файл добавьте структуру (struct) Record с четырьмя полями для хранения исходного числа, результата и оснований их систем счисления. В структуру добавьте конструктор и метод ToString() для преобразования значения в формат строки.
3. Класс History, постройте на основе библиотечного класса коллекции List<Record> из пространства имён System.Collections.Generic.
4. В классе History опишите поле List<Record> L – список значений типа Record. Для поля опишите уровень доступа private.
5. Следующие операции класса опишите с уровнем доступа public:
• добавить запись (AddRecord) - строку, содержащую введённое пользователем число, результат его преобразования и основания их систем счисления;
• извлечь запись по её номеру из списка L;
• очистить историю (Clear);
• конструктор (History);
• текущий размер списка в числе записей (Count);
Описание структуры Record и класса History могут иметь следующий вид:
public struct Record
{
int p1;
int p2;
string number1;
string number2;
public Record(int p1, int p2, string n1, string n2) { }
public override string ToString() { }
}
public class History
{
List<Record> L;
public Record this[int i] { }
public void AddRecord(int p1, int p2, string n1, string n2) { }
public void Clear() { }
public int Count() { }
public History() { }
}
Содержание отчета
1. Задание.
2. Текст программы.
3. Тестовые наборы данных для тестирования класса.
Контрольные вопросы
1. В чём состоит особенность обобщённой коллекции List< >?
2. В чём состоит отличие типа struct от типа class?
3. Как создаются объекты типа struct?
4. В чём состоит особенность раздела описания класса с уровнем доступа private?
5. В чём состоит особенность раздела описания класса с уровнем доступа public?
6. В чём состоит особенность инициализации полей ссылочного типа и констант в конструкторе?
7. Что такое this?
Редактор чисел в системе счисления с основанием р.
Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#.
Задание 1
1. Разработать и реализовать класс Editor «Редактор действительных чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с команды добавить 0 целыми числами от 0. При реализации интерфейса номера команд удобно хранить в свойстве Tag, которое имеется у визуальных компонентов.
Атрибуты и операции класс представлены на рисунке 10.
Рисунок 10 - Атрибуты и операции класса
2. Ответственность класса Editor (редактор) – хранение, ввод и редактирование строкового представления числа, представленного в системе счисления с основанием p. Класс должен обеспечивать: добавление символов (AddDigit), соответствующих р-ичным цифрам (р от 2 до 16); добавления нуля (AddZero()); добавление разделителя целой и дробной частей (AddDelim()); забой символа - удаление символа, стоящего справа (BS); очистку - установку нулевого значения числа (Clear); чтение строкового представления р-ичного числа (Number).
3. Протестировать каждый метод класса.
Рекомендации к выполнению
Описание класса может выглядеть следующим образом:
namespace Конвертор
{
class Editor
{
//Поле для хранения редактируемого числа.
string number = "";
//Разделитель целой и дробной частей.
const string delim = ".";
//Ноль.
const string zero = "0";
//Свойствое для чтения редактируемого числа.
public string Number
{ get { } }
//Добавить цифру.
public string AddDigit(int n) { }
//Точность представления результата.
public int Acc(){ }
//Добавить ноль.
public string AddZero(){ }
//Добавить разделитель.
public string AddDelim(){ }
//Удалить символ справа.
public string Bs() { }
//Очистить редактируемое число.
public string Clear() { }
//Выполнить команду редактирования.
public string DoEdit(int j) { }
}
}
Класс сохраните в файле Editor. В разделе описания констант опишите следующие константы: «разделитель целой и дробной частей» строкового типа; «строковое представление нуля» строкового типа.
Содержание отчета
1. Задание.
2. Текст программы.
3. Тестовые наборы данных для тестирования класса.
Контрольные вопросы
1. В чём состоит особенность раздела описания класса с уровнем доступа protected?
2. В чём состоит особенность раздела описания класса с уровнем доступа private?
3. В чём состоит особенность раздела описания класса с уровнем доступа public?
4. В чём состоит особенность инициализации полей ссылочного типа и констант в конструкторе?
5. Что такое this?
6. Как описываются поля в классах?
7. Какой операцией создаются объекты классов?
8. Как вызвать нестатический метод класса?
Класс История.
Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного программирования языка C#; использования библиотечного класса обобщённой коллекции List<> для обработки данных.
Задание 2
1. Разработать и реализовать класс History «История», используя класс языка C#. Класс отвечает за документирование выполнения пользователем переводов чисел. Объекты класса хранят исходные числа, результаты преобразования и основания систем счисления исходного числа и результата.
Атрибуты и операции класса представлены таблице 3.
Таблица 3 - Атрибуты и операции класса «История»
История
Запись(i: integer): String;
ДобавитьЗапись(a: String);
Записей(): integer
ОчиститьИсторию();
Обязанность: ввод, вывод, хранение данных введённых пользователем и полученных результатов.
2. Класс должен отвечать за ввод, вывод, хранение данных введённых пользователем и полученных результатов. Класс должен обеспечивать:
• добавление записи (ДобавитьЗапись) - строки, содержащей введённое пользователем число, результат его преобразования и основания систем счисления исходной и той, в которую число преобразовано;
• извлечение записи по её номеру в списке (Запись);
• очистка списка (ОчиститьИсторию);
• конструктор (Запись);
• текущий размер списка в числе записей (Записей);
3. Протестировать каждый метод класса.
Рекомендации к выполнению
1. Создайте консольное приложение, в которое добавьте класс History и сохраните его в файле History.
2. В этот же файл добавьте структуру (struct) Record с четырьмя полями для хранения исходного числа, результата и оснований их систем счисления. В структуру добавьте конструктор и метод ToString() для преобразования значения в формат строки.
3. Класс History, постройте на основе библиотечного класса коллекции List<Record> из пространства имён System.Collections.Generic.
4. В классе History опишите поле List<Record> L – список значений типа Record. Для поля опишите уровень доступа private.
5. Следующие операции класса опишите с уровнем доступа public:
• добавить запись (AddRecord) - строку, содержащую введённое пользователем число, результат его преобразования и основания их систем счисления;
• извлечь запись по её номеру из списка L;
• очистить историю (Clear);
• конструктор (History);
• текущий размер списка в числе записей (Count);
Описание структуры Record и класса History могут иметь следующий вид:
public struct Record
{
int p1;
int p2;
string number1;
string number2;
public Record(int p1, int p2, string n1, string n2) { }
public override string ToString() { }
}
public class History
{
List<Record> L;
public Record this[int i] { }
public void AddRecord(int p1, int p2, string n1, string n2) { }
public void Clear() { }
public int Count() { }
public History() { }
}
Содержание отчета
1. Задание.
2. Текст программы.
3. Тестовые наборы данных для тестирования класса.
Контрольные вопросы
1. В чём состоит особенность обобщённой коллекции List< >?
2. В чём состоит отличие типа struct от типа class?
3. Как создаются объекты типа struct?
4. В чём состоит особенность раздела описания класса с уровнем доступа private?
5. В чём состоит особенность раздела описания класса с уровнем доступа public?
6. В чём состоит особенность инициализации полей ссылочного типа и констант в конструкторе?
7. Что такое this?
Дополнительная информация
зачет
Похожие материалы
Лабораторная работа №2 "Современные технологии программирования (часть 2)"
Daniil2001
: 24 декабря 2024
Работа зачтена. В архиве - отчет, файлы с программами (написаны на c++) + .exe-файлы. Есть также ответы на контрольные вопросы
80 руб.
Современные технологии программирования (часть 2) - Лабораторная работа 2 - Вариант 5
sarekuwa
: 20 ноября 2023
Лабораторная работа №2.
Редактор чисел в системе счисления с основанием р.
Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#.
Задание 1
1. Разработать и реализовать класс Editor «Редактор действительных чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с команд
800 руб.
Современные технологии программирования (часть 2). Лабораторная работа №2. Для всех вариантов (2020).
nik200511
: 24 февраля 2021
Лабораторная работа №2.
Редактор чисел в системе счисления с основанием р.
Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#.
Задание 1
1. Разработать и реализовать класс Editor «Редактор чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с команды добавить 0
54 руб.
Лабораторная работа 2 (3 вариант) По дисциплине: Современные технологии программирования (часть 2)
alexadubinina
: 20 ноября 2024
Лабораторная работа №2.
Редактор чисел в системе счисления с основанием р.
Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#.
Задание 1
1. Разработать и реализовать класс Editor «Редактор действительных чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с команд
250 руб.
Современные технологии программирования (часть 2)
Илья272
: 5 ноября 2023
Лабораторные работы
ПРИЛОЖЕНИЕ 1 ПРАКТИЧЕСКИЕ ЗАДАНИЯ ДЛЯ ЗАКРЕПЛЕНИЯ. ПРИЛОЖЕНИЕ КОНВЕРТОР Р1_Р2.......................2
Лабораторная работа №1..................................................................................................................................9
Лабораторная работа №2................................................................................................................................15
Лабораторная работа №3.................................................
1300 руб.
Лабораторная работа №2 по Современные технологии программирования
zalexz95
: 17 октября 2017
Лабораторная работа. Абстрактный тип данных «комплексное число»
1. Реализовать абстрактный тип данных «комплексное число», используя класс Object Pascal, С++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
3. Протестировать тип данных в целом.
Спецификация типа данных «комплексное число».
ADT TComplex
200 руб.
Лабораторная работа №2. Современные технологии программирования
Lampa
: 14 января 2014
на тему «Абстрактный тип данных (ADT) p – ичная память»
Задание
1. В соответствии с приведенной ниже спецификацией реализовать абстрактный тип данных «р-ичная память», используя класс
• Object Pascal,• C++.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «р-ичная память».
ADT TMemory
Данные
Р-ичная память (тип TMemory, в дальнейшем - память) - это память для хранения объекта «р-ичное число» (тип TPNumber) и значения «состоя
39 руб.
Лабораторная работа №2 по дисциплине: Современные технологии в программировании (часть 2)
zzzzzzz
: 8 января 2020
Тема работы: «Редактор чисел в системе счисления с основанием р»
Класс Editor
Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#.
Задание 1:
1. Разработать и реализовать класс Editor «Редактор действительных чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с
100 руб.
Другие работы
Клапан электромагнитный КЭ.36.00.00 ЧЕРТЕЖ
coolns
: 23 августа 2023
Клапан электромагнитный КЭ.36.00.00
Электромагнитный клапан предназначен для управления подачей жидкости (топлива) в систему.
При прохождении тока через катушку 1 сердечник 8 втягивается и перемещает упор 10, который воздействует на мембрану 3, закрывает канал подвода жидкости.
Клапан электромагнитный КЭ.36.00.00 сб
Клапан электромагнитный КЭ.36.00.00 спецификация
Клапан электромагнитный КЭ.36.00.00 3д модель
Клапан электромагнитный КЭ.36.00.00 чертежи
Катушка КЭ.36.00.00 сб
Крышка КЭ.36.00.01
350 руб.
Спроектировать участок по восстановлению колес на базе КФХ «Нектарный» с разработкой устройства для подьема и перемещения коробок диапазона скоростей
Рики-Тики-Та
: 8 декабря 2015
СОДЕРЖАНИЕ
1.БИЗНЕС-ПЛАН НА РЕМОНТ КОЛЕС В КФХ «НЕКТАРНЫЙ»
2 РАЗРАБОТКА ТЕХНОЛОГИИ ВОССТАНОВЛЕНИЯ
3. ТЕХНОЛОГИЯ РЕМОНТА КОЛОДОК АВТОМОБИЛЕЙ ГАЗ-53
4 РАЗРАБОТКА КОНСТРУКЦИИ УСТРОЙСТВА ДЛЯ ПОДЪЕМА И ПЕРЕМЕЩЕНИЯ КОРОБОК ДИАПАЗОНОВ СКОРОСТЕЙ
5. БЕЗОПАСНОСТЬ И ЭКОЛОГИЧНОСТЬ ПРОЕКТА
6. ТЕХНИКО-ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ ПРОЕКТА
ЗАКЛЮЧЕНИЕ
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
825 руб.
Мировые рыбные промыслы. Увеличение мирового производства продовольствия за счет увеличения уловов и разведения рыбы
Slolka
: 9 ноября 2013
Содержание
Вводная часть
Морское право
Рыболовство. Способы лова
Районы мировых рыбных промыслов
Рыбоводство
Кризис Мирового рыбного промысла
Заключительная часть
Список литературы
Приложение
Вводная часть
Освоение пространств и ресурсов Мирового океана – одно из главных направлений развития мировой цивилизации в третьем тысячелетии. Сущность национальной политики ведущих морских держав и большинства государств мирового сообщества в обозримом будущем составят самостоятельная деятельно
5 руб.
Теплотехника МГУПП 2015 Задача 1.2 Вариант 96
Z24
: 7 января 2026
Газ массой М с начальными параметрами (давлением р1 и температурой t1) изотермически расширяется до увеличения объема в ε раз, а затем адиабатно сжимается до первоначального объема. Определить:
первоначальный объем и объем в конце изотермического расширения;
давление в конце изотермического расширения и адиабатного сжатия;
температуру в конце адиабатного сжатия;
изменение энтропии в процессе изотермического сжатия;
работу изотермического расширения и адиабатного сжатия.
Изобразить данные
200 руб.