x x n 1 n0 1 n 0 x n 13 Example 3 Power function include stdioh double

X x n 1 n0 1 n 0 x n 13 example 3 power function

This preview shows page 12 - 16 out of 16 pages.

x * x n-1 , n>0 1, n = 0 x n
Image of page 12
13 Example 3: Power function #include <stdio.h> double pow(double x, int n); int main(void) { double x; int n; printf("Enter double x and integer n to find pow(x,n): "); scanf("%lf%d", &x, &n); printf("pow(%f, %d) = %f\n", x, n, pow(x, n)); system("pause"); return 0; } double pow(double x, int n) { if (n == 0) return 1; /* simple case */ else return x * pow(x, n - 1); /* recursive step */ }
Image of page 13
14 Example 4: Fibonacci Function Suppose we wish to define a function to compute the nth term of the Fibonacci sequence. Fibonacci is a sequence of number that begins with the term 0 and 1 and has the property that each succeeding term is the sum of the two preceding terms: Thus, the sequence is: 0, 1, 1,2,3,5,8,13,21,34 … Mathematically, the sequence can be defined as: fib(n-1) + fib(n-2) n>1 n, n = 0, 1 fib(n)
Image of page 14
15 Example 4: Fibonacci Function #include <stdio.h> int fib(int n); int main(void) { int n; printf("Enter an integer n to find the nth fibonacci term: "); scanf("%d", &n); printf("fibonacci(%d) = %d\n", n, fib(n)); system("pause"); return 0; } int fib(int n) { if (n == 0 || n== 1) return n; /* simple case */ else return fib(n-1) + fib(n-2); /* recursive step */ }
Image of page 15
16 Tracing using Recursive Tree Another way to trace a recursive function is by drawing its recursive tree. This is usually better if the recursive case involves more than one recursive calls. Rrecursive tree of  the Fibonacci  function
Image of page 16

You've reached the end of your free preview.

Want to read all 16 pages?

  • Spring '10
  • baleh
  • Recursion, recursive functions

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

Stuck? We have tutors online 24/7 who can help you get unstuck.
A+ icon
Ask Expert Tutors You can ask You can ask You can ask (will expire )
Answers in as fast as 15 minutes