實驗三:分別用for、while和do-while循環語句以及遞歸方法計算n!,並輸出算式


1.使用for循環語句求N的階乘

 1 package For;
 2 
 3 import java.util.Scanner;
 4 public class FORXH {
 5 
 6     public static void main(String[] args) {
 7         int n,i,sum=1;
 8         System.out.print("請輸入n:");
 9         Scanner in=new Scanner(System.in);
10         n=in.nextInt();
11         for(i=1;i<=n;i++)
12         {sum=sum*i;}
13         System.out.println(sum);
14 
15     }
16 
17 }

2.使用while循環語句求N的階乘

 1 package While;
 2 
 3 import java.util.Scanner;
 4 
 5 public class WHLIE {
 6 
 7     public static void main(String[] args) {
 8     
 9         int n,i=1,sum=1;
10         System.out.print("請輸入n:");
11         Scanner in=new Scanner(System.in);
12         n=in.nextInt();
13         while(i<+n)
14         {
15             sum=sum*i;
16             i++;
17         }
18         System.out.println(sum);
19     }
20 
21 }

3.使用do-while循環語句求N的階乘

 1 package Dowhile;
 2 
 3 import java.util.Scanner;
 4 
 5 public class DOWHILE {
 6 
 7     public static void main(String[] args) {
 8         // TODO Auto-generated method stub
 9 
10         int n,i=1,sum=1;
11         System.out.print("請輸入n:");
12         Scanner in=new Scanner(System.in);
13         n=in.nextInt();
14         do {
15             sum=sum*i;
16             i++;
17         }
18         while(i<=n);
19             System.out.println(sum);
20     }
21 
22 }

4.使用遞歸方法求N的階乘

 1 package Digui;
 2 
 3 import java.util.Scanner;
 4 
 5 public class DIGUI {
 6 
 7     public static void main(String[] args) {
 8         int n;
 9         System.out.print("請輸入n:");
10         Scanner in=new Scanner(System.in);
11         n=in.nextInt();
12         fun(n);
13         System.out.println(fun(n));
14     }
15 public static int fun(int n) {
16     if(n==1||n==0) return 1;
17     else return n*fun(n-1); 
18     
19 }
20 }

實驗心得:

學會了使用java.util.Scanne類的Scanner.in語句輸入參數

int類型定義的參數有長度限制,如需計算較大的數,可以使用long定義參數


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM