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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Странный цикл for http://www.cyberforum.ru/cpp-beginners/thread411272.html
А есть ли в природе компиляторы, которые пропускают вот такой код: array<int, 3> arr = {9, 8, 7}; cout << "Array size = " << arr.size() << endl; for (auto i : arr) cout << i << endl;
C++ Переопределение operator [][] Пишу свой класс матрица. Необходимо получать доступ к элементу матрицы. Пробую переопределить оператор обычным образом, но не получается. Есть ли еще возможность получить доступ к элементу матрицы через ? написал функцию double Element(int i,int j) {return Matr;}, но она меня не устраивает.... как быть? http://www.cyberforum.ru/cpp-beginners/thread411266.html
MVS 2008 открытие проекта C++
Ребят пытаюсь открыть MVS 2008 проект .sln подписан он Version (unrecognized version), при открытие выдает: The selected file is a solution file, but was created by a newer version of this application and cannot be opned. Раньше открывал, а сейчас после обновления исходников нехочет, почему неподскажите?
объединения, онли теория C++
есть у меня объединение union un23 { char a; float b; struct { int f; short c; }; double e; } un;
C++ Function 'CharToOem' should have a prototype http://www.cyberforum.ru/cpp-beginners/thread411246.html
#include <iostream.h> #include <conio.h> #include <windows.h> #include<iomanip.h> char NEWT; char*RUS(char*TEXT) { CharToOem(TEXT,NEWT); return NEWT;}
C++ Гпрограмма Как написать такую программу в графической оболочке #include <iostream> void main() { double n; std::cin>>n; std::cout<<sqrt(n); } подробнее

Показать сообщение отдельно
Polynomyj
0 / 0 / 0
Регистрация: 19.12.2011
Сообщений: 5
19.12.2011, 17:59  [ТС]     Деление многочленов от двух переменных
Там как-то решено через шаблон. Не могли бы Вы пожалуйста объяснить вот этот кусок:
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().
 
Текущее время: 04:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru