Абстрактный тип данных "простая дробь"
Состав работы
|
|
Описание
Цель работы: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание:
• Реализовать абстрактный тип данных «простая дробь», используя класс С++ в соответствии с приведенной ниже спецификацией.
• Протестировать каждую операцию, определенную на типе данных, используя средства модульного тестирования.
• Если необходимо, предусмотрите возбуждение исключительных ситуаций.
Спецификация типа данных «простые дроби».
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 - в противном случае.
Выход: Булевское значение.
Постусловия: Нет.
ВзятьЧислительЧисло
Вход:
Предусловия: Нет.
Процесс: Возвращает значение числителя дроби
в числовом формате.
Выход: Вещественное значение.
Постусловия: Нет.
ВзятьЗнаменательЧисло
Вход: Нет.
Предусловия: Нет.
Процесс: Возвращает значение знаменателя
дроби в числовом формате.
Выход: Вещественное значение.
Постусловия: Нет.
ВзятьЧислительСтрока
Вход: Нет.
Предусловия: Нет.
Процесс: Возвращает значение числителя дроби в строковом формате.
Выход: Строка.
Постусловия: Нет.
ВзятьЗнаменательСтрока
Вход: Нет.
Предусловия: Нет.
Процесс: Возвращает значение знаменателя
дроби в строковом формате.
Выход: Строка.
Постусловия: Нет.
ВзятьДробьСтрока
Вход: Нет.
Предусловия: Нет.
Процесс: Возвращает значение простой дроби,
в строковом формате.
Выход: Строка.
Постусловия: Нет.
endTFracRatio
Задание:
• Реализовать абстрактный тип данных «простая дробь», используя класс С++ в соответствии с приведенной ниже спецификацией.
• Протестировать каждую операцию, определенную на типе данных, используя средства модульного тестирования.
• Если необходимо, предусмотрите возбуждение исключительных ситуаций.
Спецификация типа данных «простые дроби».
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 - в противном случае.
Выход: Булевское значение.
Постусловия: Нет.
ВзятьЧислительЧисло
Вход:
Предусловия: Нет.
Процесс: Возвращает значение числителя дроби
в числовом формате.
Выход: Вещественное значение.
Постусловия: Нет.
ВзятьЗнаменательЧисло
Вход: Нет.
Предусловия: Нет.
Процесс: Возвращает значение знаменателя
дроби в числовом формате.
Выход: Вещественное значение.
Постусловия: Нет.
ВзятьЧислительСтрока
Вход: Нет.
Предусловия: Нет.
Процесс: Возвращает значение числителя дроби в строковом формате.
Выход: Строка.
Постусловия: Нет.
ВзятьЗнаменательСтрока
Вход: Нет.
Предусловия: Нет.
Процесс: Возвращает значение знаменателя
дроби в строковом формате.
Выход: Строка.
Постусловия: Нет.
ВзятьДробьСтрока
Вход: Нет.
Предусловия: Нет.
Процесс: Возвращает значение простой дроби,
в строковом формате.
Выход: Строка.
Постусловия: Нет.
endTFracRatio
Дополнительная информация
Вид работы: Лабораторная работа 1
Оценка: Зачет
Дата оценки: 13.10.2019
Помогу с выполнением других работ и дисциплин.
E-mail: main.name.98@mail.ru
Оценка: Зачет
Дата оценки: 13.10.2019
Помогу с выполнением других работ и дисциплин.
E-mail: main.name.98@mail.ru
Похожие материалы
Лабораторная работа №1. Абстрактный тип данных простая дробь
aiki
: 20 сентября 2020
Лабораторная работа 1. Абстрактный тип данных простая дробь
Цель
Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание
1. Реализовать абстрактный тип данных «простая дробь», используя класс С++ в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «простые дроби».
ADT TFrac
Данные
Простая дробь (т
300 руб.
Абстрактный тип данных «простая дробь» С# лабораторная работа №1
BatGwen
: 24 апреля 2019
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов
Задание:
1. Реализовать абстрактный тип данных «простая дробь», соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования
300 руб.
Лабораторная работа №1. Абстрактный тип данных «простая дробь»
VVA77
: 11 апреля 2017
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание:
1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования
Спецификация типа данных «простая дробь».
ADT TFrac
Простая дробь (тип TFrac) - это пара целых чисел: числитель и знаменатель (a/b)
70 руб.
Лабораторная работа №1 «Абстрактный тип данных простая дробь»
8arracuda
: 22 мая 2016
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание:
1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования
Спецификация типа данных «простая дробь».
ADT TFrac
Простая дробь (тип TFrac) - это пара целых чисел: числитель и знаменатель (a/b). П
150 руб.
Лабораторная работа №1. Абстрактный тип данных простая дробь
Udacha2013
: 27 февраля 2016
Тема: Классы Object Pascal, С++
Цель: Сформировать практические навыки: реализации абстрактных типов данных с помощью классов Object Pascal, С++.
Задание
1. Реализовать абстрактный тип данных «простая дробь», используя классы
Object Pascal,
С++
в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Спецификация типа данных «простые дроби».
ADT TFrac
Данные
Простая дробь (тип TFrac) - это пара целых чисел:
200 руб.
Современные технологии программирования. Лабораторная работа №1. Абстрактный тип данных простая дробь.
zhekaersh
: 20 февраля 2015
Тема: Классы Object Pascal, С++
Цель: Сформировать практические навыки: реализации абстрактных типов данных с помощью классов Object Pascal, С++.
Задание
1. Реализовать абстрактный тип данных «простая дробь», используя классы Object Pascal, С++ в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
70 руб.
Лабораторная работа №1 по дисциплине "Современные технологии программирования". Абстрактный тип данных “простая дробь”
Doctor_Che
: 29 мая 2013
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание:
1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования
Спецификация типа данных «простая дробь».
ADT TFrac
Простая дробь (тип TFrac) - это пара целых чисел: числитель и знаменатель (a/b)
40 руб.
Лабораторная работа №1 Абстрактный тип данных «Простая дробь». Современные технологии в программировании (часть 1)
rmn77
: 19 октября 2017
Лабораторная работа №1
по дисциплине
«Современные технологии в программировании (часть 1)»
Абстрактный тип данных «Простая дробь»
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание:
1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования
50 руб.
Другие работы
Гидравлика УГНТУ Салават Задача 15 Вариант ж
Z24
: 23 декабря 2025
Определить расход жидкости Ж, температура которой 20°С, протекающей по трубопроводу из материала М в пункты 1 и 2, если напор Н в резервуаре постоянный (рисунок 27). Длины отдельных частей трубопровода равны l, l1, и l2, а диаметры d, d1 и d2 Местные потери напора в расчетах не учитывать.
250 руб.
Технологический процесс восстановления лапы чизельного культиватора КЧН-5,4 (технологический раздел дипломного проекта)
kreuzberg
: 27 июня 2018
3.ПРОЕКТИРОВАНИЕ ТЕХНОЛОГИЧЕСКОГО ПРОЦЕССА ВОССТАНОВЛЕНИЯ ОБОРОТНОЙ ЛАПЫ КЧН-5,4
Раздел 3 выполнен в соответствии с методическими рекомендациями[12,13]. В разделе получили освещение исходные данные для разработки технологического процесса, обоснование и учет форм организации производства, определение с позиций комплексного подхода способа восстановления детали, оформление ремонтного чертежа и технологической документации.
3.1.Подбор исходных данных
Технические требования на восстановление
999 руб.
Кулиса чертеж. Вариант 25
Laguz
: 15 апреля 2025
чертеж Кулисы и 3д модель компасе 21 + дополнительно сохранены в компас 11 и в джпг
Файлы компаса можно просматривать и сохранять в нужный формат бесплатной программой КОМПАС-3D Viewer.
Если есть какие-то вопросы или нужно другой вариант, пишите.
160 руб.
Організація і методика аудиту фінансової звітності
evelin
: 30 декабря 2014
Вступ
1. Завдання та інформаційна база аудиту вилученого капіталу
2. Вивчення та оцінка системи внутрішнього контролю ЗАТ «Рівне-Борошно»
2.1 Характеристика системи внутрішнього контролю ЗАТ «Рівне-Борошно»
2.2 Стан внутрішнього контролю за формуванням та обліком готової продукції
3. Методика аудиту
3.1 Методика аудиту адміністративних витрат
3.2 Програма аудиту статутного капіталу
4. Аудиторські процедури відносно достовірності показників звітності
4.1 Перевірка показників фінансової з
15 руб.