Задача Вычислить: [latex]-\frac{a_1}{1!}+\frac{a_2}{2!}-…+\frac{(-1)^na_n}{n!}[/latex]
Тест
| n | последовательность | sum(wolframalpha) | 
| 2 | 0 0 | 0 | 
| 2 | 5 8 | -1 | 
| 3 | 5 8 12 | -3 | 
| 4 | 1 2 3 24 | 1 | 
| 5 | 0 0 0 2 3 | 0, 058333 | 
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | #include <iostream> #include <math.h> using namespace std; int main() { 	int n; 	cin >> n; 	int a[n]; 	for (int i=0; i<n; i++) { 		cin >> a[i]; 	} 	double sum=0; 	int f=1; 	for (int i=1; i<=n; i++) { 		f*=i; 		double sign = (i%2==0) ? 1 : -1; 		sum+=(sign*a[i-1])/f; 	} 	cout << sum << endl; 	return 0; } | 
Решение:
В этой задаче главное правильно расставить знаки, так  как  это повлияет на результат.Поэтому мы заводим переменную [latex]sign[/latex], которая будет следить за знаком. Далее проверяем  чётность, если элемент делиться на 2 без остатка, то он получает знак [latex]+[/latex], в противном случае [latex]-[/latex]:
| 16 | double sign = (i%2==0) ? 1 : -1; | 
Описываем факториал:
| 14 15 | for (int i=1; i<=n; i++) { 		f*=i; | 
Выполняем суммирование и делим на факториал:
| 17 | sum+=(sign*a[i-1])/f; | 
Вводим в [latex]input[/latex] количество элементов ([latex]n[/latex]) и сами элементы.Получаем ответ.
