Форум программистов, компьютерный форум CyberForum.ru

Деление многочленов от двух переменных - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Polynomyj
0 / 0 / 0
Регистрация: 19.12.2011
Сообщений: 5
19.12.2011, 07:54     Деление многочленов от двух переменных #1
Есть многочлен от двух переменных, заданный следующей структурой:

C++
1
2
3
4
5
6
7
8
9
10
struct Monom
{
 int CoefX,CoefY,DegX,DegY;
};
 
struct Polynom
{
Monom mon;
Polynom* next; 
}
и указатель на первый член полинома (Polynom *first).
Необходимо поделить два таких многочлена с остатком. Подскажите алгоритм хотя бы словами.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2011, 07:54     Деление многочленов от двух переменных
Посмотрите здесь:

Деление многочленов(полиномов). доделать класс C++
Поместить в массив с[m] коэффициенты произведения двух многочленов. C++
C++ не могу понять ошибку типов переменных при деление идет обращение в ноль
C++ Нужны советы как реализовать сложение, вычитание, умножение полиномов/многочленов и деление на число
Перемножение двух многочленов C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mr.X
Эксперт С++
 Аватар для Mr.X
2796 / 1572 / 246
Регистрация: 03.05.2010
Сообщений: 3,647
19.12.2011, 12:32     Деление многочленов от двух переменных #2
Вот здесь есть решение.
Polynomyj
0 / 0 / 0
Регистрация: 19.12.2011
Сообщений: 5
19.12.2011, 17:59  [ТС]     Деление многочленов от двух переменных #3
Там как-то решено через шаблон. Не могли бы Вы пожалуйста объяснить вот этот кусок:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
void  divide
    (
        T_polynom_XYZ   L,
        T_polynom_XYZ   R,
        T_polynom_XYZ&  quotient,
        T_polynom_XYZ&  remainder,
        T_coef          my_epsilon
    )
{ 
    trim(L, my_epsilon);
    trim(R, my_epsilon); 
 
    quotient.clear();    
 
    bool  bool_res = true;
    while(
            (       
                    L.size()    >   1
                ||  *L.begin()  !=  T_monom()
            )
            &&  bool_res
         )
    {
        bool_res = false;
        T_polynom_XYZ::const_iterator  elem_for_div_it;
        //Ищем самый старший член в L, который делится на старший член R.
        for(T_polynom_XYZ::const_iterator  elem_it = L.begin();
            elem_it != L.end(); ++elem_it)
        {
            if( R.begin()->divides(*elem_it) )
            {
                bool_res            = true;
                elem_for_div_it     = elem_it;
                break;
            }
        } 
 
        if(bool_res)
        {
            //Вычисляем множитель.
            T_monom  factor = *elem_for_div_it / *R.begin();
            //Добавляем его в результат.
            quotient.insert(factor);
 
            //Вычитаем из L делитель R, умноженный на factor.
            for(T_polynom_XYZ::const_iterator  R_elem_it = R.begin();
                R_elem_it != R.end(); ++R_elem_it)
            {
                L.insert(-*R_elem_it * factor);
            }
            trim(L, my_epsilon);
        }
    }
 
    remainder = L;
    trim(quotient, my_epsilon); 
}
trim - приводит подобные.
Не совсем понятно, что такое begin().
Mr.X
Эксперт С++
 Аватар для Mr.X
2796 / 1572 / 246
Регистрация: 03.05.2010
Сообщений: 3,647
19.12.2011, 18:06     Деление многочленов от двух переменных #4
Цитата Сообщение от Polynomyj Посмотреть сообщение
Не совсем понятно, что такое begin().
Здесь STL используется.
Polynomyj
0 / 0 / 0
Регистрация: 19.12.2011
Сообщений: 5
19.12.2011, 18:16  [ТС]     Деление многочленов от двух переменных #5
А не могли бы вы описать алгоритм словами, что именно необходимо сделать, чтобы эти многочлены поделить, если вам, конечно, не трудно.
Mr.X
Эксперт С++
 Аватар для Mr.X
2796 / 1572 / 246
Регистрация: 03.05.2010
Сообщений: 3,647
19.12.2011, 18:29     Деление многочленов от двух переменных #6
Цитата Сообщение от Polynomyj Посмотреть сообщение
А не могли бы вы описать алгоритм словами
Да там в комментариях все пояснено, вчитайтесь внимательно.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.12.2011, 06:46     Деление многочленов от двух переменных
Еще ссылки по теме:

Вывести результат двух операций с использованием двух переменных C++
Сформировать массив содержащий коэффициенты произведения двух многочленов C++
C++ Деление многочленов 4 степени

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Polynomyj
0 / 0 / 0
Регистрация: 19.12.2011
Сообщений: 5
20.12.2011, 06:46  [ТС]     Деление многочленов от двух переменных #7
В комментариях понятно, что происходит, но непонятно, как это происходит, но непонятно, что происходит.
Yandex
Объявления
20.12.2011, 06:46     Деление многочленов от двух переменных
Ответ Создать тему
Опции темы

Текущее время: 02:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru