2016年11月27日 星期日

使用遞迴方式計算(1*2)+(2*3)+....(n)*(n-1)的值

package Method; /* * 使用遞迴方式計算(1*2)+(2*3)+....(n)*(n-1)的值 * 必須設定當輸入<=0的數字時強制結束程式 */ public class hw7_22 { public static void main(String[] args) { int num=10; System.out.println("(1*2)+(2*3)+....(n)*(n-1)....+當n="+num+"的總和為"+sum(num)); } public static int sum(int n){ if(n<=0){ //防止輸入負數 System.out.println("請輸入大於0的整數"); System.exit(-1); } if(n==1){ return 0; //sum(1)時為0 } return ((n-1)*(n))+sum(n-1); } } //STEP1:4*5+sum(4) //STEP2:3*4+sum(3) //STEP3:2*3+sum(2) //STEP4:2*1+sum(1) //STEP5:0+2 //STEP6:2+6 //STEP7:8+12 //STEP8:20+20

沒有留言:

張貼留言