2016-06-11 113 views
-4

寫Java方法計算以下求和: 2×3 + 3×4 + 4×5 + ... + 97×98 + 98×99方法來計算連續兩個數的乘積的總和

或更一般地說,i *(i + 1)的i = 2到98之間的總和。

這可以通過遞歸完成還是隻通過for/while循環完成?

+0

書面和發送。請檢查你的郵件。 –

回答

0

那麼,你有一個產品從每個數字開始(從2到98),這是相當直接的。所有你需要做的就是循環遍歷從2到98的所有數字(用for循環),然後在這個循環中,將計數器變量和計數器變量+1的乘積加到一個總和變量,該總和變量在0之前用0初始化循環。

int sum = 0; 

for (int i = 2; i < 98; i++) { 
    sum += i * (i + 1) 
} 

無論何時您有重複模式,您可能必須使用循環。

還存在另一種方法是:總i * (i + 1)這是一樣的總結i^2 + i並且有最初的N個數字和前n平方數(多對者this question)的總和公式。當你添加公式時,你會得到1/3 * n^3 + n^2 + 2/3 * n,它會給你前n個正方形和前n個自然數的總和。然後,您可以將n設置爲98(如您的問題所述)並減去2,因爲您不是以1開頭,而是以2開頭。