题目
7654:等差数列末项计算
总时间限制: 1000ms 内存限制: 65536kB
描述
给出一个等差数列的前两项a1,a2,求第n项是多少。
输入
一行,包含三个整数a1,a2,n。-100 <= a1,a2 <= 100,0 < n <= 1000。
输出
一个整数,即第n项的值。
样例输入
1 4 100
样例输出
298
来源
《奥数典型题举一反三(小学五年级)》 (ISBN 978-7-5445-2882-5) 第一章 第一讲 习题1
链接
(OpenJudge) OpenJudge - 7654:等差数列末项计算
代码
#include <iostream>
using namespace std;
int main()
{
int a1,a2,n,d,an;
cin >> a1 >> a2 >> n;
d = a2-a1;
an = a1+(n-1)*d;
cout << an;
return 0;
}
解析
做本题首先要知道公式:末项=首项+(项数-1)×公差,用符号表示为an=a1+(n-1)*d 其中an表示末项,a1表示首项,n表示项数,d表示公差,注意:样例里输入的n就是末项!!!
接下来开始写代码
首先我们需要定义五个变量分别对应:a1(首项) a2 (第2项)n(项数)d(公差)an(末项)
然后读入a1,a2,n
其次我们用a2-a1得出公差,写出上面的公式赋值为an,末项就求出来了
最后输出an,返回0,结束