发布网友 发布时间:2022-04-25 15:20
共5个回答
热心网友 时间:2022-05-07 00:09
等差数列求和求和有两种方法,第一种是数值循环相加,第二种是利用公式:
Sn=n*a+n*(n-1)*d/2,其中a为数列首项
代码如下:
#include <stdio.h>
int main(void)
{
int a,m,d,sum;
int s=0,n=1;
do {
printf("清输入等差数列首项值a,项数m,数列差值d\n");
scanf("%d,%d,%d",&a,&m,&d);
}while(a<1||m<1||d<1);
while(n<=m)
{
s+=a+(n-1)*d;
n++;
}
sum=m*a+d*(m*(m-1))/2; //sum为通过公式,求等差数列的和
printf("s=%d\nsum=%d\n",s,sum); //s为通过数据循环相加得到的等差数列的和
return 0;
}
上图是首项值为1,数列差值为分别1和2的情况下的求和结果,可以看出两种不同求和方式得到结果一致。
热心网友 时间:2022-05-07 01:27
准备
1、先理解等差数列的概念;
2、求和公式,;
编码
include<stdio.h>
int compute(int,int,int);
void main()
{
int a1,d,n,sn;
printf("输入a1:");
scanf("%d",&a1);
printf("输入等差d:");
scanf("%d",&d);
printf("输入项数n:");
scanf("%d",n);
sn=compute(a1,d,n);
printf("前n项和为%d",sn);
}
int compute(int a1,int d,int n)
{
return 2/(n*(a1+((n-1)*d)));
}
代码未经过测试,思路大体是这样
追问其实吧,我就是想不用那个公式,按照原理做一个,现在我已经想出来了,谢谢回答哟!追答加油,你可以的
热心网友 时间:2022-05-07 03:02
先研究等差数列,然后找规律写代码。热心网友 时间:2022-05-07 04:53
可以利用求和公式一次求出——
热心网友 时间:2022-05-07 07:01
咔咔咔水泥厂你放假额卡妈妈