Напишите программу, которая заполняет массив из 20 элементов случайными числами на отрезке [100; 1000] и находит отдельно сумму элементов в первой и во второй половинах массива. напишите сами и понятно
Const n=20; type omas=array[1..n] of integer; Procedure Del (var z:omas; k:byte); var i:byte; begin for i:=k to n-1 do z[i]:=z[i+1]; z[n]:=0; end; var a:omas; i,b:integer; begin Randomize; for i:=1 to n do begin a[i]:=random(20); write(a[i]:4); end; writeln; b:=6; i:=1; while (i<=n)and(a[i]<>b) do i:=i+1; if i<=n then begin Del(a,i); writeln('Размерность массива = ',n-1); for i:=1 to n-1 do write(a[i]:4); writeln; end else writeln('Массив не изменился'); end. Пример: 12 13 6 7 17 1 18 17 3 2 12 3 16 6 7 13 0 2 5 18 Размерность массива = 19 12 13 7 17 1 18 17 3 2 12 3 16 6 7 13 0 2 5 18
Каждый символ в кои-8 имеет объем информации 1 байт. всего текста 60*30 = 1800 байт на каждой странице. растровое изображение передает не более 8 = 2^3 цветов, значит, на кодировку цвета используется 3 бита. размер каждого рисунка 120*240*3 = 86400 бит = 10800 байт. а рисунков 2 на каждой странице. таким образом, каждая страница содержит 2*10800 + 1800 = 23400 байт. модем со скоростью передачи 28800 бит в сек передал документ за 5 сек. значит, он передал 28800*5 = 144000 бит = 18000 байт. но это меньше, чем находится на одной странице. вывод: у вас ошибка в условии.
//PascalABC.NET 3.4.2
begin
var ar := arrrandom(20, 100, 1000);
ar.Println.Take(10).Sum.Println;
ar.TakeLast(10).Sum.Println;
end.