以下代码有什么作用?

时间:2016-03-24 00:09:20

标签: function

我在大学里接受了以下代码,以便及时解释它的作用以及在运行结束时作为n函数的x值是多少,希望有人可以帮助我。

x = 0;
for(int i = n; i > 1; i--) {
    for(int j = 1; j < i; j--) {
        x +=5;
    }
}

由于

2 个答案:

答案 0 :(得分:1)

(我假设你打算写#34; j ++&#34;而不是&#34; j - &#34;,而不是最终进入无限循环?)

如果是这样,只需手动执行即可。

外部循环用i在整数上迭代,从n到2(包括)。

在该循环的每次迭代中,内部循环使用j迭代从1到i - 1(包括)的整数。

因此,对于以下各项,x增加5

j = 1,2,... n - 1

然后,每个:

j = 1,2,... n - 2

然后等,

...

,直到

j = 1

如果我没有弄错的话,总共n *(n - 1)/ 2次迭代

(参见算术级数)

最终给出,

x == 5 * n *(n - 1)/ 2

例如,对于n = 3:

x == 15

&#39; HTH

答案 1 :(得分:0)

for(int i = n; i > 1; i--) {
for(int j = 1; j < i; j--) {

因为我&gt; 1和j = 1; j&lt;一世; j--。 j总是小于i,所以它变成了一个无限循环。