Лабораторная работа №1 «Абстрактный тип данных простая дробь»

Состав работы

material.view.file_icon
material.view.file_icon
material.view.file_icon PFrac.bpf
material.view.file_icon PFrac.bpr
material.view.file_icon PFrac.cpp
material.view.file_icon PFrac.exe
material.view.file_icon PFrac.obj
material.view.file_icon PFrac.res
material.view.file_icon PFrac.~cpp
material.view.file_icon UFrac.h
material.view.file_icon Лабораторная 1.docx
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
  • 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
Абстрактный тип данных "простая дробь"
Цель работы: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++. Задание: • Реализовать абстрактный тип данных «простая дробь», используя класс С++ в соответствии с приведенной ниже спецификацией. • Протестировать каждую операцию, определенную на типе данных, используя средства модульного тестирования. • Если необходимо, предусмотрите возбуждение исключительных ситуаций. Спецификация типа данных «
User Nik001 : 29 октября 2020
200 руб.
Лабораторная работа №1. Абстрактный тип данных простая дробь
Лабораторная работа 1. Абстрактный тип данных простая дробь Цель Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++. Задание 1. Реализовать абстрактный тип данных «простая дробь», используя класс С++ в соответствии с приведенной ниже спецификацией. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования. Спецификация типа данных «простые дроби». ADT TFrac Данные Простая дробь (т
User aiki : 20 сентября 2020
300 руб.
Абстрактный тип данных «простая дробь» С# лабораторная работа №1
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов Задание: 1. Реализовать абстрактный тип данных «простая дробь», соответствии с приведенной ниже спецификацией. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования
User BatGwen : 24 апреля 2019
300 руб.
Лабораторная работа №1. Абстрактный тип данных «простая дробь»
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++. Задание: 1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования Спецификация типа данных «простая дробь». ADT TFrac Простая дробь (тип TFrac) - это пара целых чисел: числитель и знаменатель (a/b)
User VVA77 : 11 апреля 2017
70 руб.
Лабораторная работа №1. Абстрактный тип данных простая дробь
Тема: Классы Object Pascal, С++ Цель: Сформировать практические навыки: реализации абстрактных типов данных с помощью классов Object Pascal, С++. Задание 1. Реализовать абстрактный тип данных «простая дробь», используя классы Object Pascal, С++ в соответствии с приведенной ниже спецификацией. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования. Спецификация типа данных «простые дроби». ADT TFrac Данные Простая дробь (тип TFrac) - это пара целых чисел:
User Udacha2013 : 27 февраля 2016
200 руб.
Современные технологии программирования. Лабораторная работа №1. Абстрактный тип данных простая дробь.
Тема: Классы Object Pascal, С++ Цель: Сформировать практические навыки: реализации абстрактных типов данных с помощью классов Object Pascal, С++. Задание 1. Реализовать абстрактный тип данных «простая дробь», используя классы Object Pascal, С++ в соответствии с приведенной ниже спецификацией. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
User zhekaersh : 20 февраля 2015
70 руб.
Лабораторная работа №1 по дисциплине "Современные технологии программирования". Абстрактный тип данных “простая дробь”
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++. Задание: 1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования Спецификация типа данных «простая дробь». ADT TFrac Простая дробь (тип TFrac) - это пара целых чисел: числитель и знаменатель (a/b)
User Doctor_Che : 29 мая 2013
40 руб.
Лабораторная работа №1 Абстрактный тип данных «Простая дробь». Современные технологии в программировании (часть 1)
Лабораторная работа №1 по дисциплине «Современные технологии в программировании (часть 1)» Абстрактный тип данных «Простая дробь» Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++. Задание: 1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией. 2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования
User rmn77 : 19 октября 2017
50 руб.
Лабораторная работа №1 Абстрактный тип данных «Простая дробь». Современные технологии в программировании (часть 1) promo
Расчеты по теплообмену УрФУ Задача 2 Вариант 16
Для цилиндрической стенки, имеющей три слоя футеровки (рис.1.4), необходимо рассчитать: — погонную плотность теплового потока; — количество теплоты, которое теряется через всю цилиндрическую стенку длиной l; — значения температур на границе слоев. В рассматриваемом примере температура внутренней поверхности t1, а температура наружной поверхности t4. Радиусы, характеризующие расположение слоев футеровки относительно оси цилиндра, равны соответственно r1; r2; r3; r4. Коэффициенты тепло
User Z24 : 3 января 2026
150 руб.
Расчеты по теплообмену УрФУ Задача 2 Вариант 16
Вычислительная математика. Нахождение количества теплоты
Задание на курсовую работу: Напряжение в электрической цепи описывается дифференциальным уравнением с начальным условием. 1. Найти аналитически интервал изоляции положительного корня заданного нелинейного уравнения, вычислив производную левой части уравнения и составив таблицу знаков левой части уравнения на всей числовой оси. 2. Написать программу, которая: а) находит k – наименьший положительный корень заданного нелинейного уравнения из найденного в пункте 1 интервала изоляции с точностью 0.0
User Роман16 : 20 февраля 2022
500 руб.
Курсовая работа по дисциплине: Визуальное программирование и человеко-машинное взаимодействие (часть 2). Вариант №8
Курсовая работа Вариант №8 Задание: Провести первые 4 этапа проблемно-центрированного дизайна (до чернового описания включительно) программного продукта, помогающего пользователю в решении описанной ниже задачи (10 вариантов). Постарайтесь найти одного–двух человек, которые могут быть заинтересованы в решении предложенной проблемы. Дайте их краткое описание (возраст, образование, профессия, навыки и т.п.), ваше понимание задач и подзадач, решение которых будет поддерживать разрабатываемая про
User IT-STUDHELP : 8 июля 2023
450 руб.
promo
Гидравлика гидравлические машины и гидроприводы Задача 4 Вариант 1
Закрытый резервуар заполнен дизельным топливом, температура которого 20 ºС. В вертикальной стенке резервуара имеется прямоугольное отверстие (D×b), закрытое полуцилиндрической крышкой. Она может повернуться вокруг горизонтальной оси A. Мановакуумметр MV показывает манометрическое давление рм или вакуум рв. Глубина топлива над крышкой равна Н. Определить усилие F, которое необходимо приложить к нижней части крышки, чтобы она не открывалась. Силой тяжести крышки пренебречь. На схеме показать векто
User Z24 : 17 ноября 2025
200 руб.
Гидравлика гидравлические машины и гидроприводы Задача 4 Вариант 1
up Наверх