概念解析
等差数列是常见数列的一种,如果一个数列从第二项起,每一项与它的前一项的差等于同一个常数,这个数列就叫做等差数列,而这个常数叫做等差数列的公差,公差常用字母d表示。
例如:1,3,5,7,9……2n-1。
通项公式为:an=a1+(n-1)d。首项a1=1,公差d=2。
通项公式推导:
a2-a1=d;a3-a2=d;a4-a3=d……an-a(n-1)=d,将上述式子左右分别相加,得出an-a1=(n-1)d→an=a1+(n-1)d。
前n项和公式为:Sn=a1n+[n(n-1)d]/2
Sn=[n(a1+an)]/2
Sn=d/2n²+(a1-d/2)*n
注:以上n均属于正整数。
等差数列公式包括:求和、通项、项数、公差…等
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIwczX0xiRGZkRGZ0Xy9GbvNGL2EzXlpXazxSP9E0T1cmeOVTW61EM4wmYwhGWhxGZzwEMW1mY1RzRapnTtxkb5ckYplTeMZTTINGMShUYfRHelRHLwEzX39GZhh2css2RkBnVHFmb1clWvB3MaVnRtp1XlBXe0xyayFWbyVGdhd3LcV2Zh1Wa9M3clN2byBXLzN3btg3Pn5GcuMjN4IDOyUTM2ETMxgTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
代码实现
第一步:用户输入
需要输入首项、公差和 n (前n项,或者第n项中的n)
a1 = float(input("请输入首项:"))
d = float(input("请输入公差:"))
print("请输入n (前n项,或者第n项中的n:)")
n = int(input())
第二步:生成数据
根据等差数列规律逐个添加数据。
def num(a):
if int(a) == float(a):
return int(a)
return float(a)
#生成数据
li = [0]
for i in range(1,n + 1):
li.append(num(a1 + d * (i - 1)))
考虑到实际数学问题,方便起见,列表的索引(下标)与等差数列中每一项的下标一致。
同时,列表的索引为 0 时,对应的数据为 0,不影响接下来的求和功能。
第三步:得到结果
print("\n该数列的第",n,"项为:")
print(li[-1])
print("\n该数列的前",n,"项:")
print(li[1:])
print("\n前",n,"项的和为:")
print(sum(li))