如图:求数列1,3,3,3,5,5,5,5,5,7,7,7,7,7,7,7……。求:第40项的值;值为17的第1个数是数列中第几项?
工具/原料
C++编译器
一、答案:
1、代码如下:#include<iostream>using艘绒庳焰namespacestd;intmain(){ i荏鱿胫协nta[100]; intn=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(inti=0;i<100;i++){ if(a[i]==17){ cout<<i+1<<endl; break; } } return0; }
2、运行结果:
二、说明:
1、此题看似复杂,其实我们把该数组的前100项先算出来,然后按条件查找就可以了。
2、首先,我们要按要求赋值:我们可以把数组分组,把相同数字放在一组,先求出大的分组
3、再在内部把小的元素求出来:
4、最后,按条件查找并输出:cout&盟敢势袂lt;<a[39]<<endl; for(inti=0;i<1扉钛笆哇00;i++){ if(a[i]==17){ cout<<i+1<<endl; break; }