我有這樣的問題:循環爲一系列
編寫一個程序以顯示系列的總和1 + 1/2 + 2/3 + 3/4的+ ... + (正1)/ n(用於循環)。
我對這個系列沒有很好的理解,如果n = 6請親切地解釋一下。(不需要編碼)。
我有這樣的問題:循環爲一系列
編寫一個程序以顯示系列的總和1 + 1/2 + 2/3 + 3/4的+ ... + (正1)/ n(用於循環)。
我對這個系列沒有很好的理解,如果n = 6請親切地解釋一下。(不需要編碼)。
問題要求您填寫以下程序的詳細信息:
sum = 0;
for (int i=1; i<=n; ++i) {
sum += ???
}
return sum;
其中???應該給你以下值:
i | ???
-------
1 | 1
2 | 1/2
3 | 2/3
4 | 3/4
5 | 4/5
6 | 5/6
.
.
.
n | (n-1)/n
寫一個循環,爲n
每個價值評估(n-1)/n
,並增加了結果的一些變量。 「有些變數」就是答案。
設置n=6
不正確,嘗試n = 1。 –
@yi_H或'n = 0「。你想說什麼?他想理解算法,而不是C++中的代碼,它處理DBZ .. – Kashyap
因爲循環從n = 1開始,我不明白n = 0如何相關..但是n = 1是因爲它給出了該系列的第一個元素錯誤的結果。 –
這很簡單。最大的提示是第n項本身:(n-1)/n
除第一項,每個其他術語可通過(i-1)/i
形式,這意味着該算法的表達式來表示歸結爲:
double sum = 1.0; //first term
for(int i = 2 ; i <= n ; ++i) //2nd to nth term!
sum += (i-1.0)/i;
爲什麼我寫(i-1.0)
而不是(i-1)
?
您需要自己弄清楚,因爲我已經解釋過幾乎所有的代碼。
該系列的最後一項也可以寫爲n/(n + 1)
其中n
是一個迭代的值。
那麼......哪種算法? –
@Adban:即「告訴我該怎麼做?」不,這不是你的導師的用途嗎? –
爲什麼會倒票! – Aan