Polynomials
Polynomials
struct node
{
int Coeff;
int Exp;
struct node * link;
}
Algorithm Create_Polynomial ( )
1. NODE_PTR Start = NULL
2. Repeat Steps 3 to 18 while (New Term is added)
3. Read (Coefficient, c; and Exponent, e)
4. Cur = Create_Node (c, e)
5. Start = Insert_Term (Cur, Start)
6. Return Start
Algorithm Insert_Term (NODE_PTR Cur, Start)
1. NODE_PTR Cur, Prev, Next
2. If (Start = NULL or Cur->e < Start->Exp)
3. Cur->link = Start
4. Start = Cur
5. Else If (Start->link = NULL)
6. Start->link = Cur
7. Else
8. Prev = Start
9. Next = Start->link
10. Repeat Steps 14 and 15 while (Next ≠ NULL and e >
Next->Exp)
11. Prev = Next
12. Next = Next->link
13. Prev->link = Cur
14. Cur->link = Next
15. Return Start
Algorithm Main ( )
1. NODE_PTR Poly1, Poly2, Poly
2. Poly1 = Create_Polynomial ( )
3. Poly2 = Create_Polynomial ( )
4. Poly = Add_polynomials (Poly1, Poly2)
5. Display (Poly1)
6. Display (Poly2)
7. Display (Poly3)
8. Exit