{Я не до конца понимаю роль переменной n в данной задаче. Если задать большое значение данной переменной, программа вернёт NaN} //Pascal ABC.NET v3.1 сборка 1172
Var x,r:real; n,i,k:integer;
function fact(n:integer):real; Var i,k:integer; begin k:=1; for i:=1 to n do k:=k*i; fact:=k; end;
begin readln(x); readln(n); k:=1; r:=0; for i:=1 to n do begin; if odd(i) then r:=r+power(x,k)/fact(k) else r:=r-power(x,k)/fact(k); k:=k+2; end; writeln(r); end.