题目 1059: 二级C语言-等差数列
题目描述
sum=2+5+8+11+14+…,输入正整数n,求sum的前n项和。
样例输入
2
样例输出
7
根据题目我们得知,求一个等差数列的和。
等差数列的下一项=前一项+d。d是等差。
根据这个直接求每一项,再加进sum的和,最后输出即可。
在本题中,首项是2,等差(由2的下一项5得知是5-2)等于3,for循环得到每一项,加进sum输出
#include<iostream>
using namespace std;/*做一个等差数列 求前n项和*///法1(粗略版)
int GetSum1(int n) {int a1 = 2; //第一项int sum = 2;for (int i = 1; i < n; i++) {a1 += 3; //下一项等于前一项+3 sum = sum + a1;}return sum;
}//法2 定义数组求每一项
int GetSum2(int n) {int sum = 0;int* NASA=new int[n]; //同作用写法for (int i = 0; i < n; i++) {//找到数列每一项NASA[i] = 2 + i * 3; //首项是2,公差是3sum += NASA[i];}return sum;
}int main() {int N;cin >> N;int res=GetSum1(N);//int res = GetSum2(N);cout << res << endl;return 0;
}