Professional Documents
Culture Documents
#include <stdio.h>
void rec_print(int term,int N){
if(N==0) return;
else{
printf("%d ",term);
rec_print(term*2,N-1);
}
}
int main(int argc, char** argv)
{
int N=5,term=3;
rec_print(term,N);
return 0;
}
8. 1+3+5+.........upto 10 terms
#include <stdio.h>
int rec_sum(int val,int term){
if(term==1) return val;
else
{
return val+rec_sum(val+2,term-1);
}
}
int main(int argc, char** argv)
{
int term=10,val=1;
printf("sum=%d",rec_sum(val,term));
return 0;
}
𝑦
13. Find the value of exponential 𝑥
#include <stdio.h>
int rec_pow(int x,int y){
if(y==1) return x;
else return x*rec_pow(x,y-1);
}
int main(int argc, char** argv)
{
int x=3;
printf("sum=%d",rec_pow(x,x));
return 0;
}
2 2 2 2
14. Sum of the series 1 + 2 + 3 + 4 +....... + 10
#include <stdio.h>
int rec_square(int x){
if(x==1) return 1;
else return x*x+rec_square(x-1);
}
int main(int argc, char** argv)
{
int x=10;
printf("sum=%d",rec_square(x));
return 0;
}
2 3 4 5 𝑛
15. Sum of the series 1 + 2 + 3 + 4 + 5 +........ + 𝑛
#include <stdio.h>
int rec_pow(int x,int y){
if(y==1) return x;
else return x*rec_pow(x,y-1);
}
int rec_sum_pow(int val){
if(val==1) return 1;
else return rec_pow(val,val)+rec_sum_pow(val-1);
}
int main(int argc, char** argv)
{
int n=3;
printf("sum=%d",rec_sum_pow(n));
return 0;
}
#include <stdio.h>
int fib(int n){
if(n==0) return 0;
if(n==1) return 1;
else return fib(n-2)+fib(n-1);
}
int main(int argc, char** argv)
{
int num=9,i;
for(i=0;i<num;i++){
printf("%d ",fib(i));
}
return 0;
}
17. GCD using recursion
#include <stdio.h>
int GCD(int a, int b){
if(a%b==0) return b;
else return GCD(b,a%b);
}
int main(int argc, char** argv)
{
int a=42,b=8;
printf("GCD =%d",GCD(a,b));
return 0;
}
1 2 3 4 𝑛
19. Sum of the series
1!
+ 2!
+ 3!
+ 4!
+........... + 𝑛!
using recursion
#include <stdio.h>
double fact(double val){
if(val==1) return 1;
else return val*fact(val-1);
}
double rec_fact_sum(double n){
if(n==1) return 1;
else return (n/fact(n))+rec_fact_sum(n-1);
}
int main(int argc, char** argv)
{
double n=5.0;
printf("sum of factorials =%lf",rec_fact_sum(n));
return 0;
}
2 3 4 𝑁
𝑎 𝑎 𝑎 𝑎
20. Sum of the series 𝑎 + + + +........... + using recursion
2 3 4 𝑁
#include <stdio.h>
double rec_pow(double x,double y){
if(y==1) return x;
else return x*rec_pow(x,y-1);
}
2 3 4 5
21. Sum of the series 𝑎 − 𝑎 + 𝑎 − 𝑎 + 𝑎 ........ 20 𝑡𝑒𝑟𝑚𝑠 using
recursion
#include <stdio.h>
double rec_pow(double x,double y){
if(y==1) return x;
else return x*rec_pow(x,y-1);
}
24.