返回列表 發帖
本帖最後由 朱春珠 於 2022-5-21 14:06 編輯

402
  1. import java.util.Scanner;
  2. public class JPA04 {
  3.     static Scanner keyboard = new Scanner(System.in);
  4.     public static void main(String args[]) {
  5.     int n;
  6.     System.out.print("Input n (0 <= n <= 16): ");
  7.     n=keyboard.nextInt();
  8.     while(n!=999)
  9.     {
  10.             System.out.println(n+"的階乘(尾端遞迴) = "+a(n));
  11.             System.out.println(n+"的階乘(迴圈) = "+b(n));
  12.             System.out.print("Input n (0 <= n <= 16): ");
  13.         n=keyboard.nextInt();
  14.     }
  15.     }
  16.     static int a(int n)
  17.     {
  18.             if(n==1)
  19.                     return 1;
  20.             else
  21.                     return n*a(n-1);
  22.     }
  23.     static int b(int n)
  24.     {
  25.             int x=1;
  26.             for(int i=n;i>=1;i--)
  27.             {
  28.                     x=x*n;
  29.                     n--;
  30.             }
  31.             return x;
  32.     }
  33. }
複製代碼

TOP

403
  1. import java.util.Scanner;
  2. public class JPA04 {
  3.     static Scanner keyboard = new Scanner(System.in);
  4.     public static void main(String args[]) {
  5.     int m,n;
  6.     System.out.print("Input m: ");
  7.     m=keyboard.nextInt();
  8.     System.out.print("Input n: ");
  9.     n=keyboard.nextInt();
  10.     while(m!=999)
  11.     {
  12.             System.out.println("Ans 的階乘(尾端遞迴) = "+a(n,m));
  13.             System.out.println("Ans 的階乘(迴圈) = "+b(n,m));
  14.             System.out.print("Input m: ");
  15.         m=keyboard.nextInt();
  16.         System.out.print("Input n: ");
  17.         n=keyboard.nextInt();
  18.     }
  19.     }
  20.     static int a(int n,int m)
  21.     {
  22.            
  23.             if(n==1)
  24.                     return m;
  25.             else
  26.                     return m*a(n-1,m);
  27.     }
  28.     static int b(int n,int m)
  29.     {
  30.             int r=1;
  31.             for(int i=n;i>=1;i--)
  32.             {
  33.                     r=r*m;
  34.                     n--;
  35.             }
  36.             return r;
  37.     }
  38. }
複製代碼

TOP

408
  1. import java.util.Scanner;
  2. public class JPA04 {
  3.     static Scanner keyboard = new Scanner(System.in);
  4.     public static void main(String args[]) {
  5.         String s, c;
  6.         System.out.print("Input a string: ");
  7.         s = keyboard.nextLine();
  8.         System.out.printf("%s\n", reverse(s));
  9.         System.out.print("Input a string: ");
  10.         s = keyboard.nextLine();
  11.         System.out.printf("%s\n", reverse(s));
  12.     }
  13.    
  14.     static String reverse(String s)
  15.     {
  16.             if(s.equals(""))
  17.                     return "";
  18.             else
  19.                     return reverse(s.substring(1))+s.substring(0,1);
  20.                                    
  21.     }
  22. }
複製代碼

TOP

返回列表