Find the output of the following recursive algorithm.
#include<stdio.h>
int counter = 0;
int calc(int a, int b) {
int c;
counter++;
if (b==3) {
return (a*a*a);
}
else {
c = calc(a, b/3);
return (c*c*c);
}
}
int main (){
calc(4, 81);
printf ("%d", counter);
}
Output: 4
Finding factorial of a number by recursion
#include<stdio.h>
long int multiplyNumbers(int n);
int main() {
int n;
printf("Enter a positive integer: ");
scanf("%d",&n);
printf("Factorial of %d = %ld", n, multiplyNumbers(n));
return 0;
}
long int multiplyNumbers(int n) {
if (n>=1)
return n*multiplyNumbers(n-1);
else
return 1;
}
Addition of 10 consecutive numbers using recursion
#include<stdio.h>
int sum(int k);
int main() {
int result = sum(10);
printf("%d", result);
return 0;
}
int sum(int k) {
if (k > 0) {
return k + sum(k - 1);
} else {
return 0;
}
}
No comments:
Post a Comment