목차
없음
본문내용
if (p->exp == q->exp) {
x = p->coef + q->coef;
temp.term(x, q->exp);
if (x) c.poly.Attach(temp);
p = Aiter.Next();
q = Biter.Next();
}else if (p->exp < q->exp) {
temp.term(q->coef, q->exp);
c.poly.Attach(temp);
q = Biter.Next();
}else {
temp.term(p->coef, p->exp);
c.poly.Attach(temp);
p = Aiter.Next();
}
}
while (Aiter.NotNull()) {
temp.term(p->coef, p->exp);
c.poly.Attach(temp);
p = Aiter.Next();
}
while (Biter.NotNull()) {
temp.term(q->coef, q->exp);
c.poly.Attach(temp);
q = Biter.Next();
}
return c;
}
ostream& operator<<(ostream& os, Term e)
{
if (e.exp == 0){
os << " + " << e.coef;
return os;
}else if (e.exp == 1) {
os << " + " << e.coef << "x"
return os;
}else {
os << e.coef << "x^" << e.exp;
return os;
}
}
ostream& operator<<(ostream& os, List& Iter)
{
ListIterator list(Iter);
if (!list.NotNull())
return os;
os << *list.First();
while (list.NextNotNull())
os << *list.Next();
cout << endl;
return os;
}
ostream& operator<<(ostream& os, Polynomial& p)
{
os << p.poly;
return os;
}
void main()
{
Polynomial a, b;
cout << "첫번째인자를입력하세요." << endl;
a.input();
cout << "두번째인자를입력하세요." << endl;
b.input();
cout << "계산결과는?" << endl;
Polynomial c = a + b;
cout << c;
}
2. 소스코드
x = p->coef + q->coef;
temp.term(x, q->exp);
if (x) c.poly.Attach(temp);
p = Aiter.Next();
q = Biter.Next();
}else if (p->exp < q->exp) {
temp.term(q->coef, q->exp);
c.poly.Attach(temp);
q = Biter.Next();
}else {
temp.term(p->coef, p->exp);
c.poly.Attach(temp);
p = Aiter.Next();
}
}
while (Aiter.NotNull()) {
temp.term(p->coef, p->exp);
c.poly.Attach(temp);
p = Aiter.Next();
}
while (Biter.NotNull()) {
temp.term(q->coef, q->exp);
c.poly.Attach(temp);
q = Biter.Next();
}
return c;
}
ostream& operator<<(ostream& os, Term e)
{
if (e.exp == 0){
os << " + " << e.coef;
return os;
}else if (e.exp == 1) {
os << " + " << e.coef << "x"
return os;
}else {
os << e.coef << "x^" << e.exp;
return os;
}
}
ostream& operator<<(ostream& os, List
{
ListIterator
if (!list.NotNull())
return os;
os << *list.First();
while (list.NextNotNull())
os << *list.Next();
cout << endl;
return os;
}
ostream& operator<<(ostream& os, Polynomial& p)
{
os << p.poly;
return os;
}
void main()
{
Polynomial a, b;
cout << "첫번째인자를입력하세요." << endl;
a.input();
cout << "두번째인자를입력하세요." << endl;
b.input();
cout << "계산결과는?" << endl;
Polynomial c = a + b;
cout << c;
}
2. 소스코드
소개글