gwidon
Uploaded by
18 SLIDES
304 VUES
180LIKES

Recursive Factorial Implementation in Java using Stack

DESCRIPTION

This Java program demonstrates a recursive implementation of the factorial function, which calculates the factorial of a given integer `n`. The program includes a method `fac(int n)` that returns `1` if `n` is `0`, otherwise it calls itself with `n-1` and multiplies the result by `n`. The main method initializes an integer, `x`, by calling `fac(3)`, which computes the factorial of 3. The output is displayed using `System.out.println(x)`. This code exemplifies the use of recursion in programming and its basic functionality.

1 / 18

Télécharger la présentation

Recursive Factorial Implementation in Java using Stack

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Minnet (=stacken) public static int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } ..... main(String [] a) { int x; x = fac(3); System.out.println(x); }

  2. Top Minnet (=stacken) ..int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x

  3. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n ? 3

  4. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n ? 3

  5. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) n ? 3 ? 2

  6. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) n ? 3 ? 2

  7. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) n (ret) n ? 3 ? 2 ? 1

  8. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) n (ret) n ? 3 ? 2 ? 1

  9. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) n (ret) n (ret) n ? 3 ? 2 ? 1 ? 0

  10. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) n (ret) n (ret) n ? 3 ? 2 ? 1 ? 0

  11. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) n (ret) n (ret) ? 3 ? 2 ? 1 1 0

  12. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) n (ret) n (ret) ? 3 ? 2 1 1 1 0

  13. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) n (ret) ? 3 ? 2 1 1 1 0

  14. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) n (ret) ? 3 2 2 1 1 1 0

  15. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) ? 3 2 2 1 1 1 0

  16. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) n (ret) 6 3 2 2 1 1 1 0

  17. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } x (ret) 6 3 2 2 1 1 1 0

  18. Top Minnet (=stacken) int fac(int n) { if (n == 0) return 1; else return fac(n-1) * n; } .. main(..) { int x; x = fac(3); System.out.println(x); } 6 x 6 3 2 2 1 1 1 0

More Related