From 4c420b1e9b08c1b2e9ba83cd9cd9fb82de540a16 Mon Sep 17 00:00:00 2001 From: Jiri Pittner Date: Tue, 5 Oct 2021 17:33:30 +0200 Subject: [PATCH] polynomial odd and even powers separation --- polynomial.h | 2 ++ t.cc | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/polynomial.h b/polynomial.h index 89ce8ca..dafb6ec 100644 --- a/polynomial.h +++ b/polynomial.h @@ -144,6 +144,8 @@ public: } return r; } + Polynomial even_powers() const {int d=degree()/2; Polynomial r(d); for(int i=0; i<=degree(); i+=2) r[i/2] = (*this)[i]; return r;}; + Polynomial odd_powers() const {int d=(degree()-1)/2; Polynomial r(d); if(degree()==0) {r[0]=0; return r;} for(int i=1; i<=degree(); i+=2) r[(i-1)/2] = (*this)[i]; return r;}; void polydiv(const Polynomial &rhs, Polynomial &q, Polynomial &r) const; Polynomial operator/(const Polynomial &rhs) const {Polynomial q,r; polydiv(rhs,q,r); return q;}; Polynomial operator%(const Polynomial &rhs) const {Polynomial q,r; polydiv(rhs,q,r); return r;}; diff --git a/t.cc b/t.cc index c3f391b..cead833 100644 --- a/t.cc +++ b/t.cc @@ -2288,7 +2288,9 @@ if(1) { int n; cin >>n ; -cout <<"Hermite = "<(n); +Polynomial p=hermite_polynomial(n); +cout <<"Hermite = "<