Страницу Назад
Поискать другие аналоги этой работы

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).
Вход в аккаунт:
Войти

Забыли ваш пароль?

Вы еще не зарегистрированы?

Создать новый Аккаунт


Способы оплаты:
UnionPay СБР Ю-Money qiwi Payeer Крипто-валюты Крипто-валюты


И еще более 50 способов оплаты...
Гарантии возврата денег

Как скачать и покупать?

Как скачивать и покупать в картинках


Сайт помощи студентам, без посредников!