我如何使这个Foor循环在此问题中起作用?

时间:2019-11-26 02:48:19

标签: c++ loops

我的问题要求一个求和公式的数量递减,直到达到我输入的公式为止。

我的代码目前无法正常工作,任何解决方案将不胜感激。

以下是我的代码:

#include <iostream>
#include <math.h>

using namespace std;

int main()
{
    int c1 = 0, c2 = 0, c3 = 0, c4 = 0, n = 0, n2 = 0, n3 = 0, i = 0, k = 0, f = 0, c5 = 0, x = 0, y = 0, v = 0;

    cin >> n >> k;

    c1 = n - (k - 1);
    c3 = k;
    y = c1 - 1;

    f = (y * (y + 1)) / 2;

    cout << f << endl;

    // here everything works perfectly

    for (i = n; i <= c1; i--)
    { // all af this for fails i don't know why

        c2 = ceil(i / k);

        v = c2 - 1;

        c4 += (v * (v + 1)) / 2;

    }

    cout << c4 << endl;

    return 0;
}

1 个答案:

答案 0 :(得分:1)

  • 您要分配c1的值,就是用n减去k-1的值。 因此,c1的值总是小于n
  • 然后,在for循环中,您正在将i的值初始化为n。还有这个 条件(i<=c1)无论如何都会导致失败。