Programming for Problem Solving

GTU Practical 45

45. Write a C program to use recursive calls to evaluate F(x) = x – x^3 / 3! + x^5 / 5 ! – x^7 / 7! + … x^n/ n!.
#include<stdio.h>  ( this applies in the given code )

#include
#include

float rec_call(int,int);
int fact(int);

int main()
{
int n,x;
float sum=0;
printf(“\n Enter Value of X :”);
scanf(“%d”,&x);
printf(“\n Enter no of iteration n :”);
scanf(“%d”,&n);
sum = rec_call(x,n);
printf(“Sum = %f”,sum);
return 0;
}

float rec_call(int x, int n)
{
static float sum;
if(n==1)
return sum+x;
if(n%2==0)
{
sum = sum – ((pow(x,(2*n)-1)*1.0) / fact((2*n)-1) ) ;
}
else
{
sum = sum + ((pow(x,(2*n)-1)*1.0) / fact((2*n)-1) ) ;
}
rec_call(x,–n);
}

int fact(int n)
{
if(n==1)
return 1;

return n * fact(n-1);
}

OUTPUT

Enter Value of X :5

Enter no of iteration n :2
Sum = -15.833334

GTU STUDY