Современные технологии программирования (часть 1-я). Лабораторная работа №1. Абстрактный тип данных простая дробь. Для всех вариантов (2020)
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Необходимые программы
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Лабораторная работа 1. Абстрактный тип данных простая дробь
Цель
Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание
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. Тип данных реализовать в отдельном модуле UFrac.
Цель
Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание
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. Тип данных реализовать в отдельном модуле UFrac.
Дополнительная информация
март 2020, зачтено без замечаний
Похожие материалы
Современные технологии программирования. Лабораторная работа №1. Абстрактный тип данных простая дробь.
zhekaersh
: 20 февраля 2015
Тема: Классы Object Pascal, С++
Цель: Сформировать практические навыки: реализации абстрактных типов данных с помощью классов Object Pascal, С++.
Задание
1. Реализовать абстрактный тип данных «простая дробь», используя классы Object Pascal, С++ в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
70 руб.
Лабораторная работа №1 Абстрактный тип данных «Простая дробь». Современные технологии в программировании (часть 1)
rmn77
: 19 октября 2017
Лабораторная работа №1
по дисциплине
«Современные технологии в программировании (часть 1)»
Абстрактный тип данных «Простая дробь»
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание:
1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования
50 руб.
Лабораторная работа №1 по дисциплине "Современные технологии программирования". Абстрактный тип данных “простая дробь”
Doctor_Che
: 29 мая 2013
Цель: Сформировать практические навыки реализации абстрактных типов данных в соответствии с заданной спецификацией с помощью классов С++.
Задание:
1. Реализовать абстрактный тип данных «простая дробь», используя класс С++, в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования
Спецификация типа данных «простая дробь».
ADT TFrac
Простая дробь (тип TFrac) - это пара целых чисел: числитель и знаменатель (a/b)
40 руб.
Лабораторная работа №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 руб.
Другие работы
Управление инновациями в ОУ. Экзаменационный тест. 3 вариант
studypro
: 7 июля 2015
Вариант 3
41. Сколько стадий цикла характерно для инновационного менеджмента?
1) три;
2) четыре;
3) пять;
4) шесть.
42. Определенный период времени, в течение которого инновация обладает активной жизненной силой и приносит производителю или продавцу прибыль или другую реальную выгоду - это
1) этапы инновации;
2) жизненный цикл инновации;
3) фазы инновации;
4) периоды инновации.
43. Из скольки стадий состоит жизненный цикл нового продукта?
1) из четырех;
2) из пяти;
3) из шести;
4) из семи.
100 руб.
Резьбы. Вариант №7
coolns
: 6 июня 2021
Резьбы. Вариант 7
По данной аксонометрической проекции выполнить ортогональные виды: главный и сверху. Габаритные размеры и межцентровые взять с аксонометрической проекции. Размеры для стержней и отверстий в соответствии со своим вариантом. Задание выполняется на формате А4 в масштабе 1:1.
Чертеж и 3д модель выполнены в AutoCAD 2013 возможно открыть с 2013 по 2021 версиях.
200 руб.
Основы термодинамики и теплотехники СахГУ Задача 2 Вариант 34
Z24
: 28 января 2026
Сжатие воздуха в компрессоре происходит: а) по изотерме; б) по адиабате; в) по политропе с показателем n. Масса сжимаемого воздуха m, начальное давление р1=0,1 МПа, начальная температура t1, степень повышения давления X.
Определите величину теоретической работы и мощности компрессора, а также изменение внутренней энергии и энтропии при сжатии для всех вариантов процессов. Теплоемкость воздуха считать 0,723 кДж/(кг·К) постоянной. Постройте диаграмму процессов сжатия в координатах p-υ, на одном
250 руб.
Волоконно-оптические системы передачи. Контрольная. Вариант 1
kisa7
: 28 июля 2012
1. Какие диапазоны длин волн (частоты электромагнитных колебаний)
применяются в системах передачи атмосферной и волоконно-
оптической связи ?
2.Из каких укрупнённых компонентов состоит структурная схема
волоконно- оптической системы передачи (ВОСП).
3. Что представляет собой линейный тракт ВОСП.
4.Какие виды мультиплексирования применяются в оптических системах передачи.
5. Что такое WDM, DWDW и какое различие между ними.
Задача 1. Определить затухание (ослабл
100 руб.