有一个数列,a1=1,a2=2,a3=a2+a1,以此类推,求四百万以内偶数项的和?

#include<stdio.h>
#define n 4000000
int main()
{
	//long long  a1=1;//如何解决溢出
	//long long a2=2;
	long long an=3;
	long long an1=2;
	long  i=0;
	long long sum=2;
	for(i=4;i<=n;i++)
	{
		an=an+an1;
		an1=an1+(i-3);
		if(an%2==0)
		{
			sum=sum+an;
		}
	}
	printf("%lld\n",an);
	printf("%lld\n",sum);
	return 0;
}

 

#include<stdio.h>
#define n 4000000
int main()
{
	long long an1 = 1;
	long long an2 = 2;
	long long an3;
	double sum = 2;
	for(int i = 3; ; i++)
	{
		an3 = an1 + an2;
		if(an3 > 4000000)
			break;
		an1 = an2;
		an2 = an3;
		if(i % 2 == 0)
			sum = sum + an3;
	}
	printf("%.0lf\n",sum);
	return 0;
} 

 

400万以内是指值,不是指项数吧?

您好,我是问答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632

这个要考虑数据怎么存,毕竟400万这么多项