kykyryky
@kykyryky

Как перемножить скобки и получить многочлен?

Например
Дано: (x+1)(x+2)(x+3)
Должно получиться: x^3 + 6x^2 + 11x + 6
Причем скобок таких может быть как две, так и десять.

Вроде и не сложно по идее, но не знаю даже как подступиться. Как это правильно сделать?
Сперва сделаем массив длиной 4, т.е. n+1, где n - старшая степень(число скобок?), и в нем будем хранить коэффициенты при иксах. Как только эти коэффициенты посчитать..
  • Вопрос задан
  • 7696 просмотров
Решения вопроса 2
tsarevfs
@tsarevfs Куратор тега C++
C++ developer
Для разбора выражения проще всего использовать перевод в польскую запись (можете использовать метод рекурсивного спуска он немного сложнее, но универсальней).
Далее опишите класс Poly для многочлена. Определите для него операции для сложения и умножения (перегрузив соответствующие операторы или просто определив методы add и mul). Сам многочлен удобно представлять в виде вектора (массива), i-й элемент которого это коэффициент при x^i.
Ответ написан
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы