Отвечу на первый вопрос (всё-таки по правилам сайта вы должны задавать одно задание, иначе просто и вряд ли кто возьмётся, и решать будут долго, и ответ займёт кучу места).
Расставим в порядке убывания количества информации: 1) терабайт -это 1024 гигабайта (2^40 байт) 2) гигабайт -это 1024 мегабайта (2^30 байт) 3) мегабайт -это 1024 килобайта (2^20 байт) 4) килобайт -это 1024 байта (2^10 байт) 5) байт -состоит из 8 бит (8 двоичных разрядов) 6) бит и двоичный разряд -в них равное количество информации (это минимальное количество информации; бит может находится в двух различных состояниях, обозначаемых как ноль и единица)
Подумайте чуть, ведь все просто. Есть массив, у него гдето есть середина, или точка симметрии. Она находится как (n div 2). Если массив четной длины, то он делится на 2 равные части, если нечетный - в середине остается один элемент, который ни с кем менять не надо. Сейчас смотрим элементы первой половины for i:=1 to n div 2 запоминаем их x:=a[i]; присваиваем им значения симметричных им элементов с конца a[i]:=a[n-i+1]; например при n=10 a[1]:=a[10-1+1]; А элементам в конце присваиваем значения запомненных первых элементов a[n-i+1]:=x; Все, поменяли.
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int n;
double an;
cin >> n;
an = pow(-1, n) * (double(pow(2, n)) / double(pow(n, n + 1) + 1));
cout << an;
}
Объяснение: