Отвечу на первый вопрос (всё-таки по правилам сайта вы должны задавать одно задание, иначе просто и вряд ли кто возьмётся, и решать будут долго, и ответ займёт кучу места).
Расставим в порядке убывания количества информации: 1) терабайт -это 1024 гигабайта (2^40 байт) 2) гигабайт -это 1024 мегабайта (2^30 байт) 3) мегабайт -это 1024 килобайта (2^20 байт) 4) килобайт -это 1024 байта (2^10 байт) 5) байт -состоит из 8 бит (8 двоичных разрядов) 6) бит и двоичный разряд -в них равное количество информации (это минимальное количество информации; бит может находится в двух различных состояниях, обозначаемых как ноль и единица)
// PascalABC.NET 3.1, сборка 1179 от 29.02.2016 procedure GetProdNeg(a:array of integer; var p:real); // произведение отрицательных элементов begin p:=a.Where(x->x<0).Aggregate(1.0,(p,e)->p*e) end;
function IsPrime(n:integer):boolean:= Range(2,Round(sqrt(n))).All(i->n mod i<>0);
procedure ArrPrime(n:integer; var a:array of integer); // массив простых чисел не больших n begin a:=Range(2,n).Where(i->IsPrime(i)).ToArray end;
begin var n:=ReadInteger('n='); var a:=ArrRandom(n,-50,50); a.Println; var r:real; GetProdNeg(a,r); Writeln('Произведение ',r); n:=ReadInteger('n='); var b:array of integer; ArrPrime(n,b); b.Println end.