题目描述
将数列1 3 5 7 9 不断累加,问最接近x的时候,求总项数 以及 累加和。
输入
一行,包含一个整数x。(x>1) 注意:最接近不包括等于x
输出
一行,包含1个数,表示用题目中的数列不断累加过程中刚好不大于且不等于x时,累加和的值。
样例输入 Copy
10
样例输出 Copy
3 9
写法如下,哪里错了?
你现在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;
}