Страницу Назад
Поискать другие аналоги этой работы
141 Современные технологии программирования (часть 2-я). Лабораторные работы №1-3. Для всех вариантов (2020).ID: 216368Дата закачки: 24 Февраля 2021 Продавец: nik200511 (Напишите, если есть вопросы) Посмотреть другие работы этого продавца Тип работы: Работа Лабораторная Сдано в учебном заведении: ДО СИБГУТИ Описание: Лабораторная работа №1 Конвертор чисел из десятичной системы счисления в систему счисления с заданным основанием Цель: Сформировать практические навыки реализации классов на языке C#. Задание 1 1. Реализовать преобразователь действительных чисел со знаком из десятичной системы счисления в систему счисления с заданным основанием p, в соответствии с приведенной ниже спецификацией, используя класс. Основание системы счисления p принадлежит диапазону значений от 2 до 16. 2. Протестировать каждый метод класса. Спецификация класса «Преобразователь чисел из десятичной системы счисления в систему счисления с заданным основанием p». ADT Conver_10_p Данные Преобразователь действительных чисел из десятичной системы счисления в систему счисления с заданным основанием (тип Conver_10_p). Основание системы счисления p - это целое число, со значением, принадлежащим диапазону от 2 до 16 и целое число c, определяющее точность представления результата, выраженную в количестве разрядов. Операции. Операции представлены в таблице 1. Таблица 1 -Операции Do(double n, int p, int c) Выполнитьпреобразование Вход: Десятичное действительное число n. Основание системы счисления p. Точность преобразования дроби, заданная числом разрядов дробной части результата c. Например: Do(-17.875,16,3) = “-А1.Е” . Процесс: Выполняет преобразование десятичного действительного числа n, в систему счисления с основанием р и точностью c. Например: Do (”-17.875”,16,3) = “-А1.Е”. Выход: Строка результата. Например: Do(”-17.875”) = “-А1.Е”. int_to_Char(int d) Преобразовать целое значение в цифру системы счисления с основанием р. Вход: d – значение типа int – целое, соответствующее цифре в системе счисления с основанием р. Предусловия: Нет. Процесс: Преобразует целое d в соответствующую ему цифру в системе счисления с основанием р, значение типа Char. Например: int_to_Char (14) = “E”. Выход: Значение типа char. Постусловия: Нет. int_to_P(int n, int p) Преобразовать целое в строку. Вход: n – целое число в системе счисления с основанием 10. p – основание системы счисления результата. Предусловия: Нет. Процесс: Преобразует целое n в строку, содержащую целое число в системе счисления с основанием p. Например: int_to_P(161, 16) = “A1” Выход: Строка. Постусловия: Нет. flt_to_P(double n, int p, int c) Преобразоватьдробь в строку. Вход: n – дробь в системе счисления с основанием 10, p – основание системы счисления, c – точность представления дроби. Предусловия: Нет. Процесс: Преобразует дробь n в строку, содержащую дробь в системе счисления с основанием p с точностью с. Например: flt_to_P(0.9375, 2, 4) «1111» Выход: Строка. Постусловия: Нет. end Conver_10_p Класс «Конвертер р_10» - преобразователь чисел из системы счисления с основанием р в десятичную систему счисления Цель: Сформировать практические навыки реализации классов на языке C#. Задание 2 1. Реализовать преобразователь действительных (конвертер р_10) чисел из системы счисления с основанием р в десятичную систему счисления в соответствии с приведенной ниже спецификацией, используя класс. Основание системы счисления р принадлежит диапазону значений от 2 до 16. 2. Протестировать каждый метод класса. Спецификация класса «Конвертер р_10» - преобразователь действительных чисел со знаком из системы счисления с основанием р в десятичную систему счисления. ADT Conver_p_10 Данные Преобразователь действительных чисел из заданной системы счисления с основанием p в десятичную систему счисления (тип Conver_p_10). Основание системы счисления со значением, принадлежащим диапазону от 2 до 16. Операции Операции приведены в таблице 2. Таблица 2 -Операции dval(string P_num, int P) Выполнитьпреобразование Вход: P_num - строковое представление действительного числа в системе счисления с основанием р. Например: dval(“A5.E”, 16) Процесс: Выполняет преобразование действительного числа, представленного строкой в числовое представление. Например: dval(“A5.E”, 16) = -165.875. Выход: Вещественноечисло. Постусловия: Нет. char_To_num(char ch) Преобразоватьсимвол в целое Вход: ch – значение типа char – символ, изображающий цифру системы счисления с основанием p. Предусловия: Нет. Процесс: Преобразует символ ch в значение целого типа. Например: PCharToInt(‘A’) = 10. Выход: Вещественноечисло. Постусловия: Нет. convert(string P_num, int P, double weight) Преобразовать строку в вещественное число. Вход: P_num – строка, изображающая цифры целой и дробной частей вещественного числа в системе счисления с основанием p без разделителя. weight – вес единицы старшего разряда целой части числа. Предусловия: Нет. Процесс: Преобразует строку P_num, содержащую цифры целой и дробной частей вещественного числа в системе счисления с основанием p без разделителя в вещественное число. Например: convert (“A5E1”, 16, 16) Выход: Вещественноечисло. Постусловия: Нет. endConver_p_10 Лабораторная работа №2. Редактор чисел в системе счисления с основанием р. Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного языка программирования C#. Задание 1 1. Разработать и реализовать класс Editor «Редактор действительных чисел представленных в системе счисления с основанием р», используя класс языка высокого уровня. Основание системы счисления р принимает значение из диапазона 2..16. Все команды редактора удобно пронумеровать, начиная с команды добавить 0 целыми числами от 0. При реализации интерфейса номера команд удобно хранить в свойстве Tag, которое имеется у визуальных компонентов. Атрибуты и операции класс представлены на рисунке 10. Рисунок 10 - Атрибуты и операции класса 2. Ответственность класса Editor (редактор) – хранение, ввод и редактирование строкового представления числа, представленного в системе счисления с основанием p. Класс должен обеспечивать: добавление символов (AddDigit), соответствующих р-ичным цифрам (р от 2 до 16); добавления нуля (AddZero()); добавление разделителя целой и дробной частей (AddDelim()); забой символа - удаление символа, стоящего справа (BS); очистку - установку нулевого значения числа (Clear); чтение строкового представления р-ичного числа (Number). 3. Протестировать каждый метод класса. Класс История. Цель: Сформировать практические навыки реализации классов средствами объектно-ориентированного программирования языка C#;использования библиотечного класса обобщённой коллекции List<> для обработки данных. Задание 2 1. Разработать и реализовать класс History «История», используя класс языка C#. Класс отвечает за документирование выполнения пользователем переводов чисел. Объекты класса хранят исходные числа, результаты преобразования и основания систем счисления исходного числа и результата. Атрибуты и операции класса представлены таблице 3. Таблица 3 - Атрибуты и операции класса «История» История Запись(i: integer): String; ДобавитьЗапись(a: String); Записей(): integer ОчиститьИсторию(); Обязанность: ввод, вывод, хранение данных введённых пользователем и полученных результатов. 2. Класс должен отвечать за ввод, вывод, хранение данных введённых пользователем и полученных результатов. Класс должен обеспечивать: • добавление записи (ДобавитьЗапись) - строки, содержащей введённое пользователем число, результат его преобразования и основания систем счисления исходной и той, в которую число преобразовано; • извлечение записи по её номеру в списке (Запись); • очистка списка (ОчиститьИсторию); • конструктор (Запись); • текущий размер списка в числе записей (Записей); 3. Протестировать каждый метод класса. Лабораторная работа №3 Класс Управление для «Конвертора p1_р2». Цель: Сформировать практические навыки реализации классов на языке C#. Задание 1 1. Реализовать Управление для «Конвертера p1_р2». 2. Протестировать каждый метод класса. Спецификация класса Управление для «Конвертера p1_р2». ADT Control_ Данные Объект класса Control_ (Управление) отвечают за координацию действий между классом «Интерфейс» и классами «Редактор», «Конвертер p1_10», «Конвертер 10_p2», «История». Объект класса Control_ содержат поля: ed типа Editor, his типа История, и свойства: Pin типа int (основание системы счисления исходного числа), Pout типа int (основание системы счисления результата), St типа State (состояние конвертера). Он может находиться в одном из двух состояний: «Редактирование», «Преобразовано». Объекты этого типа изменяемы. Операции Операции представлены в таблице 4. Таблица 4 - Операции Control_ Конструктор Вход: Нет. Процесс: Создаёт объект Управление типа (тип Control_) и инициирует поля объекта начальными значениями. DoCommand Выполнить команду. Вход: n - целое значение, номер выполняемой команды. Предусловия: Нет. Процесс: В зависимости от значения n и состояния (St) передаёт сообщение объекту Редактор или Преобразователь и изменяет состояние. Возвращает строку результата: либо отредактированное число, либо результат преобразования. Выход: Строка. Постусловия: Нет. end Control_ Интерфейс приложения «Конвертор р1_р2». Цель: Сформировать практические навыки реализации графических интерфейсов пользователя (GUI) на основе библиотеки визуальных компонентов. Задание 2 1. Реализовать «Интерфейс» приложения «Конвертер р1_р2», используя библиотечный класс формы и визуальные компоненты. 2. Протестировать методы класса. Спецификация класса «Интерфейс». Интерфейс приложения представлен на рисунке 1. ADT TPanel_p_p Данные «Интерфейс» конвертера действительных чисел из системы счисления с основанием p1 в систему счисления с основанием p2 предназначен для: выбора оснований систем счисления p1, p2 из диапазона от 2..16; ввода и редактирования действительного числа со знаком в системе счисления с выбранным основанием p1; отображения результата – представления ввёдённого числа в системе счисления с основанием p2; отображения справки о приложении; отображения истории текущего сеанса работы пользователя с приложением. «Интерфейс» несёт на себе визуальные компоненты, реализующие выполнения команд преобразователя и объект «Управление» класса Control_. Операции. Операции представлены в таблице 5. Таблица 5 - Операции Наименование Пояснение trackBar1_Scroll Обработчик события Scroll для компонента trackBar1. Вход: objectsender, EventArgse. sender – указатель на объект, который явился инициатором события Scroll. e - это объект базового класса для классов, содержащих данные о событии. Предусловия: Пользователь перетаскивает бегунок компонента trackBar1. Процесс: Обновляет свойства визуальных компонентов формы, связанных с изменением основания системы счисления р1 исходного числа. Устанавливает новое значение основания системы счисления. Обновляет состояние командных кнопок. Постусловия: Обновления выполнены. Выход: Нет. numericUpDown1_ValueChanged Обработчик события ValueChanged для компонента numericUpDown1. Вход: objectsender, EventArgse. sender – указатель на объект, который явился инициатором события ValueChanged. Предусловия: Пользователь изменяет р1 с помощью компонента numericUpDown1. Процесс: Обновляет свойства визуальных компонентов формы, связанных с изменением основания системы счисления р1 исходного числа. Устанавливает новое значение основания системы счисления. Обновляет состояние командных кнопок. Постусловия: Обновления выполнены. Выход: Нет. trackBar2_Scroll Обработчик события Scroll для компонента trackBar2. Вход: objectsender, EventArgse. sender – указатель на объект, который явился инициатором события Scroll. Предусловия: Пользователь перетаскивает бегунок компонента trackBar2. Процесс: Обновляет свойства визуальных компонентов формы, связанных с изменением основания системы счисления p2 исходного числа. Устанавливает новое значение основания системы счисления. Постусловия: Обновления выполнены. Выход: Нет. numericUpDown2_ValueChanged Обработчик события ValueChanged для компонента numericUpDown2. Вход: objectsender, EventArgse. sender – указатель на объект, который явился инициатором события ValueChanged. Предусловия: Пользователь изменяет р2 с помощью компонента numericUpDown2. Процесс: Обновляет свойства визуальных компонентов формы, связанных с изменением основания системы счисления р2 результата. Устанавливает новое значение основания системы счисления. Обновляет состояние командных кнопок. Постусловия: Обновления выполнены. Выход: Нет. numericUpDown1_ValueChanged Обработчик события ValueChanged для компонента numericUpDown1. Вход: objectsender, EventArgse. sender – указатель на объект, который явился инициатором события ValueChanged. Предусловия: Пользователь изменяет р1 с помощью компонента numericUpDown1. Процесс: Обновляет свойства визуальных компонентов формы, связанных с изменением основания системы счисления р1 результата. Устанавливает новое значение основания системы счисления. Обновляет состояние командных кнопок. Постусловия: Обновления выполнены. Выход: Нет. TPanelp_p_Load Обработчик события Load для компонента TPanelp_p. Вход: (objectsender, EventArgse). sender – указатель на объект, который явился инициатором события Load. Предусловия: Форма загружается в память. Процесс: Устанавливает начальные значения свойств визуальных компонентов формы после загрузки формы. Выход: Нет. Постусловия: Установка свойств выполнена. DoCmnd(int j) Выполнить команду. Вход: j значение целого типа – номер команды преобразователя. Предусловия: Пользователь нажал командную кнопку команды с номером j. Процесс: Передаёт сообщение объекту Управление и отображает возвращаемый им результат. Вызывается метод объекта Управление и передаётся номер набранной пользователем команды Конвертора. Выход: Нет. Постусловия: Обновляется состояние Интерфейса. button_Click Обработчик события Click для командных кнопок. Вход: object sender, EventArgs e. sender: object – указатель на объект, который явился инициатором события Click. Предусловия: Пользователь нажал командную кнопку. Процесс: Извлекает из свойства Tag командной кнопки номер соответствующей ей команды. Вызывает метод DoCmnd Интерфейса и передаёт в него номер команды. Выход: Нет. Постусловия: Нет. TPanelp_p_KeyPress Обработчик события KeyPress для алфавитно-цифровых клавиш клавиатуры. Вход: object sender, KeyPressEventArgs e. Предусловия: Пользователь нажал алфавитно-цифровую клавишу клавиатуры. Процесс: Определяет по нажатой алфавитно-цифровой клавише номер соответствующей ей команды. Вызывает метод DoCmnd Интерфейса и передаёт в него номер команды. Выход: Нет. Постусловия: Команда пользователя вызвана. TPanelp_p_KeyDown Обработчик события KeyDown для клавиш управления клавиатуры. Вход: (object sender, KeyEventArgs e) Предусловия: Пользователь нажал клавишу управления клавиатуры. Процесс: Определяет по нажатой клавише управления номер соответствующей ей команды. Вызывает метод DoCmnd Интерфейса и передаёт в него номер команды. Выход: нет. Постусловия: Команда пользователя вызвана. UpdateP1 Выполнить обновления связанные с изменением р1. Вход: Нет. Предусловия: Изменено основание с.сч. р1 исходного числа. Процесс: Выполняет необходимые обновления при смене ос. с. сч. р1. Выход: Нет. Постусловия: Состояние кнопок обновлено. UpdateP2 Выполнить обновления связанные с изменением р2. Вход: Нет. Предусловия: Изменено основание с.сч. р2 результата. Процесс: Выполняет необходимые обновления при смене ос. с. сч. р2. Выход: Нет. Постусловия: Состояние кнопок обновлено. UpdateButtons Вход: Нет. Предусловия: Изменено основание с.сч. р1 исходного числа. Процесс: Обновляет состояния командных кнопок предназначенных для ввода цифр выбранной системы счисления p1. Выход: Нет. Постусловия: Состояние кнопок обновлено. выходToolStripMenuItem_Click Команда Выход основного меню класса TPanelp_p формы. Вход: object sender, EventArgs e. Предусловия: Пользователь кликает мышью на пункте Выход основного меню формы. Процесс: Завершает работу приложения. Выход: Нет. Постусловия: Приложение завершено. справкаToolStripMenuItem_Click Команда Справка основного меню класса TPanelp_p формы. Вход: object sender, EventArgs e Предусловия: Пользователь кликает мышью на пункте Справка основного меню формы. Процесс: Показывает окно со справкой по приложению. Выход: Нет. Постусловия: Отображено окно справки. историяToolStripMenuItem_Click Команда История основного меню класса TPanelp_p формы. Вход: object sender, EventArgs e Предусловия: Пользователь кликает мышью на пункте История основного меню формы. Процесс: Открывает окно История. Выход: Нет. Постусловия: Окно История - открыто. endTPanel_p_p Комментарии: март 2020, зачтено без замечаний Размер файла: 1,4 Мбайт Фаил: (.rar) ------------------- Обратите внимание, что преподаватели часто переставляют варианты и меняют исходные данные! Если вы хотите, чтобы работа точно соответствовала, смотрите исходные данные. Если их нет, обратитесь к продавцу или к нам в тех. поддержку. Имейте ввиду, что согласно гарантии возврата средств, мы не возвращаем деньги если вариант окажется не тот. -------------------
Скачано: 34 Сейчас качают: 1 Коментариев: 0 |
||||
Есть вопросы? Посмотри часто задаваемые вопросы и ответы на них. Опять не то? Мы можем помочь сделать! Некоторые похожие работы:Современные технологии программирования (часть 2-я). Лабораторная работа №1. Для всех вариантов (2020).Современные технологии программирования (часть 1). Лабораторная работа №3. Абстрактный тип данных (ADT) p-ичное число. Для всех вариантов (2020) Современные технологии программирования (часть 1-я). Лабораторная работа №1. Абстрактный тип данных простая дробь. Для всех вариантов (2020) Современные технологии программирования (часть 2). Лабораторная работа №2. Для всех вариантов (2020). Современные технологии программирования (часть 2-я). Лабораторная работа №3. Для всех вариантов (2020). Современные технологии программирования (часть 1-я). Лабораторная работа №2. Абстрактный тип данных “комплексное число”. Для всех вариантов (2020) Ещё искать по базе с такими же ключевыми словами. |
||||
Не можешь найти то что нужно? Мы можем помочь сделать! От 350 руб. за реферат, низкие цены. Спеши, предложение ограничено ! |
Вход в аккаунт:
Страницу Назад
Cодержание / Современные технологии программирования / Современные технологии программирования (часть 2-я). Лабораторные работы №1-3. Для всех вариантов (2020).
Вход в аккаунт: