题目 1059: 二级C语言-等差数列

题目描述

sum=2+5+8+11+14+...,输入正整数n,求sum的前n项和。
样例输入

2
样例输出

7

根据题目我们得知,求一个等差数列的和。

等差数列的下一项=前一项+d。d是等差。

根据这个直接求每一项,再加进sum的和,最后输出即可。

在本题中,首项是2,等差(由2的下一项5得知是5-2)等于3,for循环得到每一项,加进sum输出

cpp 复制代码
#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,公差是3
		sum += NASA[i];
	}
	return sum;
}

int main() {
	int N;
	cin >> N;
	int res=GetSum1(N);
	//int res = GetSum2(N);
	cout << res  << endl;
	return 0;
}
相关推荐
水木流年追梦6 分钟前
大模型入门-DPO 直接偏好优化
人工智能·学习·算法·机器学习·正则表达式
悠仁さん27 分钟前
数据结构 树 二叉树 堆 (堆的模拟实现篇)
数据结构
汉克老师37 分钟前
GESP6级C++考试语法知识(二十七、广度优先搜索(二、二维BFS))
c++·算法·图论·宽度优先·广度优先搜索·gesp6级·gesp六级
此生决int37 分钟前
算法从入门到精通——位运算
数据结构·c++·算法·蓝桥杯
春栀怡铃声38 分钟前
【C++修仙录02】筑基篇:vector 使用
开发语言·c++·算法
Loli_Wolf43 分钟前
AI 原生研发闭环:从提需到线上监测,再自动回到提需
人工智能·深度学习·算法·microsoft·ai·ai编程·harness
丁劲犇43 分钟前
使用TraeAI开发Web页面测试MSYS2 ucrt64 Qt MCP服务器
服务器·前端·c++·qt·mcp
计算机安禾1 小时前
【算法分析与设计】第4篇:分治策略的理论框架与经典案例
数据结构·算法·排序算法
Kiling_07041 小时前
面向对象和集合编程题 ( 二 )
java·开发语言·数据结构·算法