ЛР4_Полиномы (Архив готовых лабораторных работ для ИУ)
Описание файла
Файл "ЛР4_Полиномы" внутри архива находится в следующих папках: Архив готовых лабораторных работ для ИУ, 1, задания. Документ из архива "Архив готовых лабораторных работ для ИУ", который расположен в категории "". Всё это находится в предмете "информатика" из 2 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "информатика" в общих файлах.
Онлайн просмотр документа "ЛР4_Полиномы"
Текст из документа "ЛР4_Полиномы"
С++ - Лаб.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.
Требования к отчету. Отчет должен содержать следующие разделы:.
-
«Постановка задачи», в котором на основании задания уточняются задачи, для решения которых предполагается использовать разрабатываемый класс.
-
«Разработка интерфейса класса», в котором описываются и обосновываются состав полей и методов класса, прототипы методов. Интерфейс класса должен обеспечить решение всех предполагаемых задач. При разработке интерфейса класса надо руководствоваться принципом: второстепенные детали или детали реализации должны быть упрятаны (инкапсулированы) внутрь класса.
-
«Текст программы», в котором приведены исходные тексты разработанной программы. При защите лабораторной работы студент должен уметь объяснить назначение каждого оператора разработанной им программы.
-
«Анализ результатов», в котором приводятся разработка контрольных примеров, распечатки результатов выполнения программой контрольных примеров и анализ результатов.