Страницу Назад
Поискать другие аналоги этой работы
150 Лабораторная работа №1 «Абстрактный тип данных простая дробь»ID: 167968Дата закачки: 22 Мая 2016 Продавец: 8arracuda (Напишите, если есть вопросы) Посмотреть другие работы этого продавца Тип работы: Работа Лабораторная Форматы файлов: Microsoft Word Сдано в учебном заведении: СибГУТИ Описание: Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++. Задание: 1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования Спецификация типа данных «простая дробь». ADT TFrac Простая дробь (тип TFrac) - это пара целых чисел: числитель и знаменатель (a/b). Простые дроби изменяемые Операции Операции могут вызываться только объектом простая дробь (тип TFrac), указатель на который в них передаётся по умолчанию. При описании операций этот объект называется «сама дробь». Конструктор Начальные значения: Пара целых чисел (a) и (b). Процесс: Инициализирует поля простой дроби (тип TFrac): числитель значением a, знаменатель - (b). В случае необходимости дробь предварительно сокращается. Например: Конструктор(6,3) = (2/1) Конструктор(0,3) = (0/3). Конструктор Начальные значения: Строковое представление простой дроби . Например: ‘7/9’. Процесс: Инициализирует поля простой дроби (тип TFrac) строкой f =’a/b’. Числитель значением a, знаменатель - b. В случае необходимости дробь предварительно сокращается. Например: Конструктор(‘6/3’) = 2/1 Конструктор (‘0/3’) = 0/3 Копировать: Вход: Нет. Предусловия: Нет. Процесс: Создаёт копию самой дроби (тип TFrac) с числителем, и знаменателем такими же, как у самой дроби. Выход: Простая дробь (тип TFrac). Например: c = 2/1, Копировать(c) = 2/1 Постусловия: Нет. Сложить Вход: Простая дробь d (тип TFrac). Предусловия: Нет. Процесс: Создаёт и возвращает простую дробь (тип TFrac), полученную сложением самой дроби q = a1/b1 с d =a2/b2: ((a1/b1)+(a2/b2)=(a1*b2 + a2*b1)/( b1* b2)). Например: q = 1/2, d = -3/4 q.Сложить(d) = -1/4. Выход: Простая дробь (тип TFrac). Постусловия: Нет. Умножить Вход: Простая дробь d (тип TFrac). Предусловия: Нет. Процесс: Создаёт простую дробь (тип TFrac), полученную умножением самой дроби q = a1/b1 на d = a2/b2 ((a1/b1)*(a2/b2)=(a1* a2)/( b1* b2)). Выход: Простая дробь (тип TFrac). Постусловия: Нет. Вычесть Вход: Простая дробь d (тип TFrac). Предусловия: Нет. Процесс: Создаёт и возвращает простую дробь (тип TFrac), полученную вычитанием d = a2/b2 из самой дроби q = a1/b1: ((a1/b1)-(a2/b2)=(a1* b2-a2*b1)/(b1*b2)). Например: q = (1/2), d = (1/2) q.Вычесть(d) = (0/1). Выход: Простая дробь (тип TFrac). Постусловия: Нет Делить Вход: Простая дробь d (тип TFrac). Предусловия: Числитель числа d не равно 0. Процесс: Создаёт и возвращает простую дробь (тип TFrac), полученное делением самой дроби q = a1/b1 на дробь d = a2/b2: ((a1/b1)/(a2/b2)=(a1* b2)/( a2*b1)). Выход: Простая дробь (тип TFrac). Постусловия: Нет. Квадрат Вход: Нет. Предусловия: Нет. Процесс: Создаёт и возвращает простую дробь (тип TFrac), полученную умножением самой дроби на себя: ((a/b)*(a/b)=(a* a)/( b* b)). Выход: Простая дробь (тип TFrac). Постусловия: Нет. Обратное Вход: Нет. Предусловия: Нет. Процесс: Создаёт и возвращает простую дробь (тип TFrac), полученное делением единицы на саму дробь: 1/((a/b) = b/a. Выход: Простая дробь (тип TFrac) Постусловия: Нет. Минус Вход: Нет. Предусловия: Нет. Процесс: Создаёт простую дробь, являющуюся разностью простых дробей z и q, где z - простая дробь (0/1), дробь, вызвавшая метод. Выход: Простая дробь (тип TFrac). Постусловия: Нет. Равно Вход: Простая дробь d (тип TFrac). Предусловия: Нет Процесс: Сравнивает саму простую дробь q и d. Возвращает значение True, если q и d - тождественные простые дроби, и значение False - в противном случае. Выход: Булевское значение. Постусловия: Нет. Больше Вход: Простая дробь d (тип TFrac). Предусловия: Нет. Процесс: Сравнивает саму простую дробь q и d. Возвращает значение True, если q > d, - значение False - в противном случае. Выход: Булевское значение. Постусловия: Нет. ВзятьЧислительЧисло Вход: Предусловия: Нет. Процесс: Возвращает значение числителя дроби в числовом формате. Выход: Вещественное значение. Постусловия: Нет. ВзятьЗнаменательЧисло Вход: Нет. Предусловия: Нет. Процесс: Возвращает значение знаменателя дроби в числовом формате. Выход: Вещественное значение. Постусловия: Нет. ВзятьЧислительСтрока Вход: Нет. Предусловия: Нет. Процесс: Возвращает значение числителя дроби в строковом формате. Выход: Строка. Постусловия: Нет. ВзятьЗнаменательСтрока Вход: Нет. Предусловия: Нет. Процесс: Возвращает значение знаменателя дроби в строковом формате. Выход: Строка. Постусловия: Нет. ВзятьДробьСтрока Вход: Нет. Предусловия: Нет. Процесс: Возвращает значение простой дроби, в строковом формате. Выход: Строка. Постусловия: Нет. end TFracRatio Рекомендации к выполнению 1. Тип данных реализовать, используя класс C++. 2. Для записи и считывания полей простой дроби использовать свойства (property). 3. Тип данных реализовать в отдельном модуле UFrac. Комментарии: Уважаемый слушатель, дистанционного обучения, Оценена Ваша работа по предмету: Современные технологии в программировании (часть 1) Вид работы: Лабораторная работа 1 Оценка:Зачет Дата оценки: 13.04.2016 Размер файла: 123,3 Кбайт Фаил: ![]()
Скачано: 7 Коментариев: 0 |
||||
Есть вопросы? Посмотри часто задаваемые вопросы и ответы на них. Опять не то? Мы можем помочь сделать! Некоторые похожие работы:Современные технологии программирования (часть 1-я). Лабораторная работа №1,2,3.Современные технологии программирования(часть 1). Лабораторная работа 1,2,3. Лабораторная работа 1 2 3 Современные технологии программирования Все варианты 2023 год Лабораторные работы №1,2,3 по дисциплине: Современные технологии программирования (часть 1). Для всех вариантов Современные технологии программирования (часть 1). Лабораторные работы 1-3. Все варианты. 2019 Лабораторная работа №1 Абстрактный тип данных «Простая дробь». Современные технологии в программировании (часть 1) Абстрактный тип данных «Р-ичное число». Лабораторная работа №2 Современные технологии в программировании (часть 1) Ещё искать по базе с такими же ключевыми словами. |
||||
Не можешь найти то что нужно? Мы можем помочь сделать! От 350 руб. за реферат, низкие цены. Спеши, предложение ограничено ! |
Вход в аккаунт:
Страницу Назад
Cодержание / Современные технологии программирования / Лабораторная работа №1 «Абстрактный тип данных простая дробь»
Вход в аккаунт: