如图:求数列1,3,3,3,5,5,5,5,5,7,7,7,7,7,7,7……。求:第40项的值;值为17的第1个数是数列中第几项?

工具/原料
C++编译器
一、答案:
1、代码如下:#include <iostream>using namespace std;int main(){ i荏鱿胫协nt a[100]; int n=0,i=0; for(n=1;n<10;n++){ for(i=(n-1)*(n-1);i>=(n-1)*(n-1)&&i<n*n;i++){ a[i]=2*n-1; } } cout<<a[39]<<endl; for(int i=0;i<100;i++){ if(a[i]==17){ cout<<i+1<<endl; break; } } return 0; }

2、运行结果:

二、说明:
1、此题看似复杂,其实我们把该数组的前100项先算出来,然后按条件查找就可以了。

2、首先,我们要按要求赋值:我们可以把数组分组,把相同数字放在一组,先求出大的分组

3、再在内部把小的元素求出来:

4、最后,按条件查找并输出:cout<<a[39]<<endl; for(int i=0;i<100;i++){ if(a[i]==17){ cout<<i+1<<endl; break; }
