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

Написать шаблон класса полином и функции, высчитывающие производную и первообразную полинома - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Перегруженная функция sqrt http://www.cyberforum.ru/cpp-beginners/thread877731.html
начал писать программу,а тут такая фигня перегруженная функция sqrt,в чем фокус не пойму я еще ничего не написал толком а уже перегруз #include<iostream> #include<math.h> using namespace std; void main() { setlocale(LC_ALL,"russian");//руссификатор int Sc,Sk; double r=0,a=0,dg=0,dm=0;//инициализация переменных
C++ cannot convert `float' to `float*. Почему так происходит? всем привет, помогите исправить ошибки... а то голова мало варит уже, а завтра надо сдать уже #include <stdio.h> #include <stdlib.h> #include <iostream> #include <iomanip.h> #include <math.h> #include <conio.h> http://www.cyberforum.ru/cpp-beginners/thread877721.html
C++ Немного непонятен алгоритм (в списке класса, состоящем из n строк и m столбцов, отмечаются выполненные лабораторные работы)
вот условие задачи: В списке класса, состоящем из n строк и m столбцов, отмечаются выполненные лабораторные работы. Работа выполнена, если за нее проставлена оценка. За невыполненную работу ставится нуль. Школьник не допускается к следующей работе, пока он не выполнил предыдущую. Написать программу, определяющую в процентах, сколько учеников класса наиболее близки к завершению всех m работ ...
C++ Пояснение typedef
typedef bool (*comparator)(void* fisrt, void* second); что делает *comparator, и что это вобще ?
C++ Функция отбора по заданному критерию для данных из .bin в .txt http://www.cyberforum.ru/cpp-beginners/thread877679.html
Доброго времени суток. Такая проблема: Необходимо из бинарного файла со списком футболистов отобрать в текстовый вратарей. void zap(FILE*FT,FILE**FB) {while (fread(&dan,sizeof(data),1,*FB)>0) if ((String)dan.ampl=="Вратарь") fprintf(*FT,"%s %s %s %s %i %i\n",&dan.name,&dan.rod,&dan.mest,&dan.ampl,dan.game,dan.yc); }
C++ Модеры почему нет раздела дев С++??? подробнее

Показать сообщение отдельно
gaaalim
0 / 0 / 0
Регистрация: 27.04.2013
Сообщений: 9
26.05.2013, 18:36  [ТС]     Написать шаблон класса полином и функции, высчитывающие производную и первообразную полинома
Спасибо...видимо,придётся всю прогу переделать.

Добавлено через 16 часов 12 минут
Посмотрите,пожалуйста. Оператор просит только один аргумент,а когда я убираю второй, то просит два) Что делать ?
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#include <vector>
#include <iostream>
using namespace std;
template <class A> class Polinom
{
public:
  vector<A> Pol;
public:
  Polinom()
    {
        Pol.resize(1); Pol[0] = 0;
    }
    Polinom(A a)
    {
        Pol.resize(1);
        Pol[0] = a;
    }
    Polinom(int n, A *koef)
    {
        Pol.resize(n);
        for(int i = 0; i < n; i++)
            Pol[i] = koef[i];
    }
    Polinom(const Polinom& initPol)
    {
        Pol = initPol.Pol;
    }
    Polinom<A> operator - ();
    Polinom<A> operator + (Polinom<A>);
    Polinom<A> operator - (Polinom<A>);
    Polinom<A> operator * (Polinom<A>);
    Polinom<A> operator = (Polinom<A>);
    ostream& operator << (ostream & out,const Polinom<A> & it);
};
template <class A>::ostream&  operator << (ostream & out,const Polinom<A> & it)
    {
        unsigned int i;
        char xs[3];
        for(i=0;i<=it.Pol.size;i++)
            {
                if(i!=0)
                {
                    xs="x^";
                }
                else
                {
                    xs="";
                }
                if (it.Pol!=0)
                {
                    out<< (it.Pol[i] ? " - " : " + ") << it.Pol[i] << xs << i ;
                }
            }
        return out;
    }
 
template <class A> Polinom<A> Polinom<A> :: operator + (Polinom<A> add)
{
    Polinom<A> result;
    Polinom<A> * md;
    size_t maxdeg, mindeg;
    if(this->Pol.size() <= add.Pol.size())
        md = &add;
    else
        md = this;
    maxdeg = max(this->Pol.size(),add.Pol.size());
    mindeg = min(this->Pol.size(),add.Pol.size());
    result.Pol.resize(maxdeg);
    for(unsigned int i = 0; i < mindeg; i++)
        result.Pol[i] = this->Pol[i] + add.Pol[i];
    for(size_t i = mindeg; i < maxdeg; i++)
        result.Pol[i] = md->Pol[i];
    return result;
}
template <class A> Polinom<A> Polinom<A> :: operator - ()
{
    Polinom<A> result;
    for(int i = 0; i < this->Pol.size(); i++)
        result.Pol[i] = -this->Pol[i];
    return result;
}
template <class A> Polinom<A> Polinom<A> :: operator - (Polinom<A> sub)
{
    Polinom<A> result;
    result = *this + (-sub);
    return result;
}
template <class A> Polinom<A> Polinom<A> :: operator * (Polinom<A> mult)
{
    Polinom<A> result;
    result.Pol.resize(this->Pol.size() + mult.Pol.size() - 1);
    for(unsigned int i = 0; i < this->Pol.size(); i++)
        for(unsigned int j = 0; j < mult.Pol.size(); j++)
            result.Pol[i+j] += this->Pol[i]*mult.Pol[j];
    return result;
}
template <class A> Polinom<A> Polinom<A> :: operator = (Polinom<A> right)
{
    this->Pol = right.Pol;
    return *this;
}
Код
 

 6\Poly.h|33|error: `std::ostream& Polinom<A>::operator<<(std::ostream&, const Polinom<A>&)' must take exactly one argument|
||=== Build finished: 1 errors, 0 warnings ===|
 
Текущее время: 16:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru