ЛР4_Полиномы (1079105)
Текст из файла
С++ - Лаб.4
Написать программу ввода и оперирования полиномами, состоящими из термов. Использовать классы Term and Polynomial.
Ввод полинома
-
Термы полинома могут вводиться в любом порядке.
-
Во вводимом терме может присутствовать коэффициент -1.
-
Терм (член полинома одного порядка) может складываться с другим термом (например, допустим ввод 3x^2+(–x^2), -3x^2 + x^2)
-
Пробелы при вводе могут появляться где угодно.
класс Term
-
Целые члены-данные для коэффициента и показателя степени
-
Три конструктора (можно обойтись одним):
-
Без параметров для представления 0x0
-
С одним параметром, например 3, для представления 3x0
-
С двумя параметрами, например 3 и 2, для представления 3x2
-
Перегруженный operator +, который получает 2 терма как параметры и возвращает терм-результат.
Перегруженную операцию istream>> для ввода терма в виде, определенном выше в разделе «Ввод полинома».
Перегруженную операцию ostream << для печати терма в виде:
3x0 как 3, 3x1 как 3x, 1x3 как x^3, -3x2 как -3x^2
Дружественный класс Polynomial
Опишите и протестируйте этот класс до создания класса Polynomial. Представьте main() для демонстрации работы этого класса независимо от Polynomial.
класс Polynomial
-
Члены-данные poly (массив из 6 термов или сортированный список), и целое degree (степень)
-
Три конструктора
-
Без параметров для представления полинома 0
-
С одним целым параметром, например 3, для представления полинома 3
-
С одним параметром-термом, например Term(3,2), для представления полинома 3x2
-
Конструктор копирования и операторы присваивания =, +=, *=
Скрытый член Order для указания способа хранения термов: по возрастанию или убыванию степени.
Друзья класса: operator *, operator +, каждый из которых получает 2 полинома как параметры и возвращает полином-результат.
Друг класса ostream << - для печати полинома 5x5 - 4x3 + 1x2 + 0x1 - 7x0
в виде: 5x^5 - 4x^3 + x^2 - 7
Представьте main() для демонстрации работы класса Polynomial и 5 файлов: Term.h, Term.cpp, Polynomial.h, Polynomial.cpp, mymain.cpp.
Требования к отчету. Отчет должен содержать следующие разделы:.
-
«Постановка задачи», в котором на основании задания уточняются задачи, для решения которых предполагается использовать разрабатываемый класс.
-
«Разработка интерфейса класса», в котором описываются и обосновываются состав полей и методов класса, прототипы методов. Интерфейс класса должен обеспечить решение всех предполагаемых задач. При разработке интерфейса класса надо руководствоваться принципом: второстепенные детали или детали реализации должны быть упрятаны (инкапсулированы) внутрь класса.
-
«Текст программы», в котором приведены исходные тексты разработанной программы. При защите лабораторной работы студент должен уметь объяснить назначение каждого оператора разработанной им программы.
-
«Анализ результатов», в котором приводятся разработка контрольных примеров, распечатки результатов выполнения программой контрольных примеров и анализ результатов.
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.