Задача. Найти сумму членов арифметической прогрессии по данным значениям .
Тесты:
[latex]a[/latex] | [latex]d[/latex] | [latex]n[/latex] | [latex]Sn[/latex] |
8 | 657 | 0 | 0 |
5 | 0 | 2 | 10 |
5 | 8 | 1 | 5 |
0 | 5565 | 88 | 21302776 |
Код:
1 2 3 4 5 6 7 8 9 |
#include <iostream> using namespace std; int main() { int a, d, n; cin >> a >> d >> n; cout << ((2*a + d*(n - 1))/2)*n; return 0; } |
Алгоритм.
В данной программе я воспользовался формулой суммы арифметической прогрессии. А именно [latex] S_{n} = \frac{a_{1} + d(n — 1)}{2} * n [/latex], где [latex]a_{1}[/latex] — первый член арифметической прогрессии, [latex]d[/latex] -разница арифметической прогрессии и [latex]n[/latex] — номер последнего члена суммы. Программа же просто выводит результат данных вычислений на экран.
Зачтено, но лучше везде использовать обозначение [latex]S_n[/latex], а не [latex]Sn[/latex].