回答

✨ ベストアンサー ✨

也就是要計算 x+=1 會被運行的次數
或者可以進行一些簡化:

對於k的迴圈:
for(int k = 1; k <= j; k++){
x += 1;
}
可以改寫成:
x += j;

再來,對於j的迴圈:
for(int j = 1; j <= i; j++){
x += j;
}
利用連續正整數和公式
可以改寫成:
x += i*(i+1)/2;

最後,對於i的迴圈:
for(int i = 1; i <= 8; i++){
x += i*(i+1)/2;
}
要計算 (1×2)/2 + (2×3)/2 + (3×4)/2 + ⋯ + (8×9)/2
= (1²+1)/2 + (2²+2)/2 + (3²+3)/2 + ⋯ + (8²+8)/2
= (1²+2²+3²+⋯+8²)/2 + (1+2+3+⋯+8)/2
利用連續正整數和、平方和公式
可再化簡成
= (8×9×17/6) / 2 + (8×9/2) / 2
= 6 × 17 + 2 × 9
= 120

所以最後的 x 值就是 -100 + 120 = 20

この回答にコメントする
PromotionBanner
疑問は解決しましたか?