Assignment No.10: Roll No 55 Batch: - S3
Assignment No.10: Roll No 55 Batch: - S3
10
Implement polynomial using CLL and perform
i. Addition of polynomials
ii. Multiplication of polynomials
iii. Evaluation of polynomails
ROLL NO 55
Batch: - S3
________________________________________________________________________
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
POLY* create()
{
POLY *hn=NULL,*nn=NULL,*cn=NULL;
int i,n;
printf("\n Enter how many terms- ");
scanf("%d",&n);
for(i=0;i<n;i++)
{
nn=createnewnode();
printf("\n Enter coefficient & exponent - ");
scanf("%d %d",&nn->c,&nn->e);
if(hn==NULL)
{
hn=nn;
cn=nn;
}
else
{
cn->link=nn;
cn=nn;
}
nn->link=hn;
}
return(hn);
}//end createpoly
//Function Name-display
do
{
if(e==cn->e)
{
cn->c=c+cn->c;
return(cn);
}
cn=cn->link;
}while(cn!=h3);
return(NULL);
}//end sameexpo
}
else
{
last->link=nn;
}
nn->link=h3;
return(h3);
}//end addlast
//Function Name- multipoly
//end while
while(p!=h1)
{ nn= createnewnode();
h3=addlastnode(nn,h3,last);
last=nn;
nn->c=p->c;
nn->e=p->e;
p=p->link;
}
while(q!=h2)
{
nn=createnewnode();
h3=addlastnode(nn,h3,last);
last=nn;
nn->c=q->c;
nn->e=q->e;
q=q->link;
}
return(h3);
}//end add poly
int main()
{
POLY *hn=NULL, *h1=NULL, *h2=NULL;
int ch;
printf("\n---------------POLYNOMIAL OPERATION---------------------");
do
{
printf("\n\n 1.CREATE \n 2.DISPLAY \n 3.EVALUATE \n 4.MULTIPLY \n 5.ADD \n 6.EXIT");
printf("\n Enter YOUR Choice- ");
scanf("%d",&ch);
switch(ch)
{
case 1:hn=create();
break;
case 2:display(hn);
break;
case 3:evaluate(hn);
break;
case 4:h1=create();
h2=create();
hn=multipoly(h1,h2);
display(hn);
break;
case 5:h1=create();
h2=create();
hn=addpoly(h1,h2);
display(hn);
break;
case 6:exit(0);;
}//end switch
}//end do
while(ch!=6);
}//end main
OUTPUT :
---------------POLYNOMIAL OPERATION---------------------
1.CREATE
2.DISPLAY
3.EVALUATE
4.MULTIPLY
5.ADD
6.EXIT
Enter YOUR Choice- 1
Enter how many terms- 3
1.CREATE
2.DISPLAY
3.EVALUATE
4.MULTIPLY
5.ADD
6.EXIT
Enter YOUR Choice- 2
1.CREATE
2.DISPLAY
3.EVALUATE
4.MULTIPLY
5.ADD
6.EXIT
Enter YOUR Choice- 3
Enter value of x - 2
Evaluation is- 21
1.CREATE
2.DISPLAY
3.EVALUATE
4.MULTIPLY
5.ADD
6.EXIT
Enter YOUR Choice- 5