Все разделы / Программирование /


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

За деньгиЗа деньги (300 руб.)

Современные технологии программирования. Лабораторная работа №1. Вариант: 8

Дата закачки: 01 Февраля 2015
Продавец: Shamrock
    Посмотреть другие работы этого продавца

Тип работы: Работа Лабораторная
Форматы файлов: Microsoft Word, Pascal
Сдано в учебном заведении: СибГУТИ

Описание:
Абстрактный тип данных (ADT) p - ичное число

Тема: Классы Object Pascal, С++

Цель: Сформировать практические навыки: реализации абстрактного типа данных с помощью классов Object Pascal, С++.

Задание

1.Реализовать абстрактный тип данных “р-ичное число”, используя класс


Object Pascal,

C++,

в соответствии с приведенной ниже спецификацией.

1.Протестировать каждую операцию, определенную на типе данных, одним из методов тестирования.


Спецификация типа данных “р-ичное число”.

ADT TPNumber

ДанныеР-ичное число TPNumber - это действительное число (n) со знаком в системе счисления с основанием (b) (b в диапазоне 2..16), содержащее целую и дробную части. Точность представления числа c (c >= 0). Р-ичные числа изменяемые.

Операции

Операции могут вызываться только объектом р-ичное число (тип TPNumber), указатель на который в них передаётся по умолчанию. При описании операций этот объект называется “само число”.


КонструкторЧисло
Начальные значения:
Вещественное число (a) во внутреннем формате, система счисления (b), точность представления числа (c)
Процесс:
Создаёт p-ичное число: система счисления (b), точность представления (c). В поле (n) созданного числа заносится (a).
Например:
КонструкторЧисло(a,3,3) = число a в системе счисления 3 с тремя разрядами после троичной точки.
КонструкторЧисло (a,3,2) = число a в системе счисления 3 с двумя разрядами после троичной точки.

КонструкторСтрока
Начальные значения:
Строковое представление р–ичного числа (a), система счисления (b), точность представления числа (c)
Процесс:
Создаёт р-ичное число: система счисления (b), точность представления (c). В поле (n) созданного числа заносится результат преобразования строки (a) в числовое представление. b-ичное число (a) и основание системы счисления (b) представлены в формате строки.

Например:

КонструкторСтрока(‘20’,’3’,’6’) = 20 в системе счисления 3, точность 6 знаков после запятой.

КонструкторСтрока (‘0’,’3’,’8’) = 0 в системе счисления 3, точность 8 знаков после запятой.

Копировать:
Вход: Нет.
Предусловия: Нет.
Процесс: Создаёт копию самого числа (тип TPNumber).
Выход: р-ичное число.
Постусловия: Нет.

Сложить
Вход:
Р-ичное число d с основанием и точностью такими же, как у самого числа.
Предусловия: Нет.
Процесс:
Создаёт и возвращает р-ичное число (тип TPNumber), полученное сложением полей (n) самого числа и числа d.
Выход: р-ичное число.
Постусловия: Нет

Умножить
Вход:
Р-ичное число d с основанием и точностью такими же, как у самого числа.
Предусловия: Нет.
Процесс:
Создаёт и возвращает р-ичное число (тип TPNumber), полученное умножением полей (n) самого числа и числа d.
Выход: Р-ичное число (тип TPNumber).
Постусловия: Нет.

Вычесть
Вход:
Р-ичное число d с основанием и точностью такими же, как у самого числа.
Предусловия: Нет.
Процесс:
Создаёт и возвращает р-ичное число (тип TPNumber), полученное вычитанием полей (n) самого числа и числа d.
Выход: Р-ичное число (тип TPNumber).
Постусловия: Нет.

Делить
Вход:
Р-ичное число d с основанием и точностью такими же, как у самого числа.
Предусловия:
Поле (n) числа (d) не равно 0.
Процесс:
Создаёт и возвращает р-ичное число (тип TPNumber), полученное делением полей (n) самого числа на поле (n) числа d.
Выход: Р-ичное число (тип TPNumber).
Постусловия: Нет.

Обратить
Вход: Нет.
Предусловия: Поле (n) самого числа не равно 0.
Процесс:
Создаёт р-ичное число, в поле (n) которого заносится значение, полученное как 1/(n) самого числа.
Выход: Р-ичное число (тип TPNumber).
Постусловия: Нет.

Квадрат
Вход: Нет.
Предусловия: Нет.
Процесс:
Создаёт р-ичное число, в поле (n) которого заносится значение, полученное как квадрат поля (n) самого числа.
Выход: Р-ичное число (тип TPNumber).
Постусловия: Нет.

ВзятьРЧисло
Вход: Нет.
Предусловия: Нет.
Процесс:
Возвращает значение поля (n) самого числа.
Выход: Вещественное значение.
Постусловия: Нет.

ВзятьРСтрока
Вход: Нет.
Предусловия: Нет.
Процесс:
Возвращает р-ичное число (q) в формате строки, изображающей значение поля (n) самого числа в системе счисления (b) с точностью (c).
Выход: Строка.
Постусловия: Нет.

ВзятьОснованиеЧисло
Вход: Нет.
Предусловия: Нет.
Процесс:
Возвращает значение поля (b) самого числа (q).
Выход: Целочисленное значение
Постусловия: Нет.

ВзятьОснованиеСтрока
Вход: Нет.
Предусловия: Нет.
Процесс:
Возвращает значение поля (b) самого числа в формате строки, изображающей (b) в десятичной системе счисления.
Выход: Строка.
Постусловия: Нет.

ВзятьТочностьЧисло
Вход: Нет.
Предусловия: Нет.
Процесс:
Возвращает значение поля (c) самого числа .
Выход: Целое значение.
Постусловия: Нет.

ВзятьТочностьСтрока
Вход: Нет.
Предусловия: Нет.
Процесс:
Возвращает значение поля (c) самого числа в формате строки, изображающей (c) в десятичной системе счисления.
Выход: Строка.
Постусловия: Нет.

УстановитьОснованиеЧисло
Вход: Целое число (newb).
Предусловия: 2 <= newb <= 16.
Процесс: Устанавливает в поле (b) самого числа значение (newb).
Выход: Нет.
Постусловия: Нет.

УстановитьОснованиеСтрока
Вход:
Строка (bs), изображающая основание (b) p-ичного числа в десятичной системе счисления.
Предусловия:
Допустимый диапазон числа, изображаемого строкой (bs) - 2,,16.
Процесс:
Устанавливает значение поля (b) самого числа значением, полученным в результате преобразования строки (bs).
Выход: Строка.
Постусловия: Нет.

УстановитьТочностьЧисло
Вход: Целое число (newc).
Предусловия: newc >= 0.
Процесс: Устанавливает в поле (c) самого числа значение (newc).
Выход: Нет.
Постусловия: Нет.

УстановитьТочностьСтрока
Вход: Строка (newc).
Предусловия:
Строка (newc) изображает десятичное целое >= 0.
Процесс:
Устанавливает в поле (c) самого числа значение, полученное преобразованием строки (newc).
Выход: Нет.
Постусловия: Нет.

end TPNumber
Рекомендации к выполнению
1.Тип данных реализовать, используя класс

•Object Pascal,
•С++.

1.Число храните как поле вещественного типа.
2.Основание системы счисления храните как поле целочисленного типа.
3.Для чтения и записи р - ичного числа в вещественном и строковом формате используйте свойства (property).
4.Тип данных реализовать в отдельном модуле UPNumber.

Содержание отчета
1.Задание.
2.Текст программы.
3.Тестовые наборы данных для тестирования типа данных.

Контрольные вопросы
1.Что такое инкапсуляция?
2.Как синтаксически представлено поле в описании класса?
3.Как синтаксически представлен метод в описании класса?
4.Как синтаксически представлено простое свойство в описании класса?
5.Особенности описания методов класса?
6.Особенности описания и назначение конструктора класса?
7.Видимость идентификаторов в описании класса?
8.Особенности вызова методов применительно к объектам класса?


Коментарии: Работа была зачтена с первого раза в 2014г.
Преподаватель: Зайцев М.Г.

Размер файла: 36,8 Кбайт
Фаил: Упакованные файлы (.zip)

-------------------
Обратите внимание, что преподователи часто переставляют варианты и меняют исходные данные!
Если вы хотите что бы работа точно соответствовала, смотрите исходные данные. Если их нет, обратитесь к продавцу или к нам в тех. поддержку.
Имейте ввиду, что согласно гарантии возврата средств, мы не возвращем деньги если вариант окажется не тот.
-------------------

 Скачать Скачать

 Добавить в корзину Добавить в корзину

        Коментариев: 0


Есть вопросы? Посмотри часто задаваемые вопросы и ответы на них.
Опять не то? Мы можем помочь сделать!

Некоторые похожие работы:

К сожалению, предложений нет. Рекомендуем воспользваться поиском по базе.

Сдай работу играючи!

Рекомендуем вам также биржу исполнителей. Здесь выполнят вашу работу без посредников.
Рассчитайте предварительную цену за свой заказ.



Страницу Назад

  Cодержание / Программирование / Современные технологии программирования. Лабораторная работа №1. Вариант: 8

Вход в аккаунт:

Войти

Перейти в режим шифрования SSL

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

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

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




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