Современные технологии программирования (часть 2) Лабораторная работа 2

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

material.view.file_icon
material.view.file_icon
material.view.file_icon Editor.cs
material.view.file_icon History.cs
material.view.file_icon Документ Microsoft Word.docx

Необходимые программы

Работа представляет собой 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?

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

зачет
Лабораторная работа №2 "Современные технологии программирования (часть 2)"
Работа зачтена. В архиве - отчет, файлы с программами (написаны на c++) + .exe-файлы. Есть также ответы на контрольные вопросы
User Daniil2001 : 24 декабря 2024
80 руб.
Лабораторная работа №2 "Современные технологии программирования (часть 2)"
Современные технологии программирования (часть 2) - Лабораторная работа 2 - Вариант 5
Лабораторная работа №2. Редактор чисел в системе счисления с основанием р. Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#. Задание 1 1. Разработать и реализовать класс Editor «Редактор действительных чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с команд
User sarekuwa : 20 ноября 2023
250 руб.
Современные технологии программирования (часть 2) - Лабораторная работа 2 - Вариант 5
Современные технологии программирования (часть 2). Лабораторная работа №2. Для всех вариантов (2020).
Лабораторная работа №2. Редактор чисел в системе счисления с основанием р. Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#. Задание 1 1. Разработать и реализовать класс Editor «Редактор чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с команды добавить 0
User nik200511 : 24 февраля 2021
54 руб.
Лабораторная работа 2 (3 вариант) По дисциплине: Современные технологии программирования (часть 2)
Лабораторная работа №2. Редактор чисел в системе счисления с основанием р. Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#. Задание 1 1. Разработать и реализовать класс Editor «Редактор действительных чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с команд
User alexadubinina : 20 ноября 2024
250 руб.
Современные технологии программирования (часть 2)
Лабораторные работы ПРИЛОЖЕНИЕ 1 ПРАКТИЧЕСКИЕ ЗАДАНИЯ ДЛЯ ЗАКРЕПЛЕНИЯ. ПРИЛОЖЕНИЕ КОНВЕРТОР Р1_Р2.......................2 Лабораторная работа №1..................................................................................................................................9 Лабораторная работа №2................................................................................................................................15 Лабораторная работа №3.................................................
User Илья272 : 5 ноября 2023
1300 руб.
Лабораторная работа №2 по Современные технологии программирования
Лабораторная работа. Абстрактный тип данных «комплексное число» 1. Реализовать абстрактный тип данных «комплексное число», используя класс Object Pascal, С++, в соответствии с приведенной ниже спецификацией. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования. 3. Протестировать тип данных в целом. Спецификация типа данных «комплексное число». ADT TComplex
User zalexz95 : 17 октября 2017
200 руб.
Лабораторная работа №2 по Современные технологии программирования
Лабораторная работа №2. Современные технологии программирования
на тему «Абстрактный тип данных (ADT) p – ичная память» Задание 1. В соответствии с приведенной ниже спецификацией реализовать абстрактный тип данных «р-ичная память», используя класс • Object Pascal,• C++. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования. Спецификация типа данных «р-ичная память». ADT TMemory Данные Р-ичная память (тип TMemory, в дальнейшем - память) - это память для хранения объекта «р-ичное число» (тип TPNumber) и значения «состоя
User Lampa : 14 января 2014
39 руб.
Лабораторная работа №2 по дисциплине: Современные технологии в программировании (часть 2)
Тема работы: «Редактор чисел в системе счисления с основанием р» Класс Editor Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#. Задание 1: 1. Разработать и реализовать класс Editor «Редактор действительных чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с
User zzzzzzz : 8 января 2020
100 руб.
Пластина. Вариант 4
Пластина. Вариант 4 Перечерить пластину, определяя размеры по клеткам. сторона клетки 5 мм. Проставить размеры. Чертеж выполнен на формате А4 (все на скриншотах показано и присутствует в архиве) сделано и открываются в компасе v13, компас v14, компас v15, компас v16, компас v17, компас v18, компас v19, компас v20, компас v21, компас v22 и выше версиях компаса. Также открывать и просматривать, печатать чертежи и 3D-модели, выполненные в КОМПАСЕ можно просмоторщиком КОМПАС-3D Viewer. Просьба п
User lepris : 16 августа 2022
100 руб.
Пластина. Вариант 4
Гидравлика Москва 1990 Задача 27 Вариант 6
Два одинаковых насоса работают последовательно и подают воду в открытый резервуар из колодца на геодезическую высоту. Определить рабочую точку (подачу и напор) при совместной работе насосов на сеть, если коэффициент сопротивления сети (системы) ξ=1200, а диаметр трубопровода d. Как изменятся суммарный напор и подача, если частота вращения рабочего колеса одного из насосов увеличится на 12 %? (Данные, необходимые для построения характеристик Q-H, те же, что и в задаче 25).
User Z24 : 27 декабря 2025
220 руб.
Гидравлика Москва 1990 Задача 27 Вариант 6
Вычислительная математика. Вариант №18
Задание к работе: Напряжение в электрической цепи описывается дифференциальным уравнением с начальным условием. Найти аналитически интервал изоляции положительного корня заданного нелинейного уравнения, вычислив производную левой части уравнения и составив таблицу знаков левой части уравнения на всей числовой оси. Написать программу, которая: находит k – наименьший положительный корень заданного нелинейного уравнения из найденного в пункте 1 интервала изоляции с точностью 0.001 методом: деле
User IT-STUDHELP : 1 декабря 2021
500 руб.
promo
Развертка стенки и днища резервуара вертикального стального РВСП-15000 м-Чертеж-Оборудование транспорта и хранения нефти и газа-Курсовая работа-Дипломная работа
Развертка стенки и днища резервуара вертикального стального РВСП-15000 м-(Формат Компас-CDW, Autocad-DWG, Adobe-PDF, Picture-Jpeg)-Чертеж-Оборудование транспорта нефти и газа-Курсовая работа-Дипломная работа
User lenya.nakonechnyy.92@mail.ru : 11 сентября 2023
318 руб.
Развертка стенки и днища резервуара вертикального стального РВСП-15000 м-Чертеж-Оборудование транспорта и хранения нефти и газа-Курсовая работа-Дипломная работа
up Наверх