数列问题+不确定循环次数3(最接近但不大于或者等于)

题目描述
将数列1 3 5 7 9 不断累加,问最接近x的时候,求总项数 以及 累加和。

输入
一行,包含一个整数x。(x>1)    注意:最接近不包括等于x

输出
一行,包含1个数,表示用题目中的数列不断累加过程中刚好不大于且不等于x时,累加和的值。

样例输入 Copy
10
样例输出 Copy
3 9

写法如下,哪里错了?

img

你现在i和a的公式一样,那值不也一样了吗
i=0;i++;
或者直接删掉i,(a-1)/2就是项数

i =0;
i+=1; 计数项数

#include
using namespace std;
#define N 1000
int main()
{
int a[N];
int i=0,t=1,sum=0;
int m;
for(i;i<N;i++)
{
a[i]=t;
t+=2;
}
cin >> m;

/*for(i=0;i<N;i++)
{
    cout << a[i];
}*/

for(i=0;i<N;i++)
{
    sum+=a[i];
    if(m<sum)
    {
        t=i;
        sum-=a[i];
        break;
    }
}
cout << t <<endl;
cout << sum <<endl;
return 0;

}