You are given a polynomial of degree n. The polynomial is of the form P(x) = anxn + an-1xn-1 + … + a0, where the ai‘s are the coefficients. Given an integer x, write a program that will evaluate P(x).
You are provided with a function named power( ) that takes two positive integers x & y and returns xy. If y is 0, the function returns 1.
The prototype of this function is
int power(int x, int y);
You do not have to write the program for power ( ) function. This function is automatically added at the end of the code segment that you write.
0
INPUT:
Line 1 contains the integers n and x separated by whitespace.
Line 2 contains the coefficients an, an-1…, a0 separated by whitespace.
OUTPUT:
A single integer which is P(x).
CONSTRAINTS:
The inputs will satisfy the following properties. It is not necessary to validate the inputs.
1 <= n <= 10
1 <= x <= 10
0 <= ai <=10
#include<stdio.h>
/* function to calculate power x^y */
int power(int x, int y){
int pow=1;
while (y!=0){
pow*=x;
y--;
}
return pow;
}
int pol(int ,int ,int[] ,int );
int main(){
int i,n,x,a[15];
scanf("%d%d",&n,&x);
for(i=0;i<n+1;i++){
scanf("%d",&a[i]);
}
printf("%d",pol(x,n,a,0));
return 0;
}
int pol(int x,int n,int a[],int i){
if(n==0)
return a[i];
else
return (a[i]*power(x,n))+pol(x,n-1,a,++i);
}
No comments:
Post a Comment