From 516184e818b386f507a5b365862a601768351b20 Mon Sep 17 00:00:00 2001 From: Ananthu <51333577+AMP0075@users.noreply.github.com> Date: Sat, 5 Oct 2019 11:26:26 +0530 Subject: [PATCH] Create Polynomial Addition --- Polynomial Addition | 111 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 111 insertions(+) create mode 100644 Polynomial Addition diff --git a/Polynomial Addition b/Polynomial Addition new file mode 100644 index 0000000..59adf76 --- /dev/null +++ b/Polynomial Addition @@ -0,0 +1,111 @@ +#include + +struct poly +{ + int coef,exp; +}term1[50]; + +int compare(int a, int b) +{ + if(a==b) + return 1; + else if(a=50) + printf("Too many terms in the polynomial.\n\nCANNOT Execute\n"); + else + { + term1[free].coef=a; + term1[free].exp=b; + printf("%ix^%i+",term1[free].coef,term1[free].exp); + free++; + } +} + +void polyadd(int af, int al, int bf, int bl, int cf) +{ + int p,q,s,free; + p=af; + q=bf; + free=cf; + while((p<=al)&&(q<=bl)) + { + switch(compare(term[p].exp,term[q].exp)) + { + case 1: s=term[p].coef+term[q].coef; + if(s!=0) + newterm(s,term1[p].exp,free); + p++;q++; + break; + + case 2: newterm(term1[q].coef,term1[q].exp,free); + q++; + break; + + case 3: newterm(term1[p].coef,term1[p].exp,free); + p++; + break; + } + } + if(p<=al) + { + newterm(term1[p].coef,term1[p].exp,free); + p++; + } + if(q<=al) + { + newterm(term1[q].coef,term1[q].exp,free); + q++; + } +} + +void main() +{ + int m,n,s,t,x,y,i,free; + printf("Enter the Number of terms of polynomial 1:\n"); + scanf("%i",&m); + printf("Enter the Number of terms of polynomial 2:\n"); + scanf("%i",&n); + printf("Enter the Elements of polynomial 1:\n"); + for(x=0;x