3 мб = 3072 кб
4096 - 3072 = 1024 кб
1 int = 4 bytes
178 * 4 = 712 байт.
178 - 70 = 108.
108 * 4 = 432
А вообще для этого в C/C++ есть функция sizeof :)
1)
uses crt;
const
n=5;m=7;
var
i,j,s:integer;
a:array[1..n,1..m]of integer;
begin
randomize;
clrscr;
for i:=1 to n do
begin
for j:=1 to m do
begin
a[i,j]:=random(40)-19;
write(a[i,j]:4);
end;
writeln;
end;
writeln;
for j:=1 to m do
begin
s:=0;
for i:=1 to n do
s:=s+a[i,j];
writeln ('j:',j,' ', s);
writeln;
end;
end.<span>
</span>
Задание лишено смысла, т. к. символ никогда не кодируется частью байта. Но допустим, что под байтом тут просто понимается массив из 8 битов. Тогда 2^(30 * 8 / 40) = 64.