1.
а) 512 Мбайт = 512 * 8 Мбит = 4096 Мбит
б) 32 Кбайт = 32 * 8 Кбит = 256 Кбит
2.
а) 32 Мбит = 32 : 8 Мбайт = 4 Мбайт
б) 1024 Кбит = 1024 : 8 Кбайт = 128 Кбайт
3. Все зависит от кодировки. Если 1 символ занимает 1 байт, тогда сообщение будет занимать столько байт, сколько символов в сообщении (буквы, пробелы, точки и любые другие символы) - в данном случае - 20 байт.
Если же 1 символ занимает 2 байта (к примеру в кодировке юникод UTF-16), тогда сообщение будет занимать 40 байт.
4. 4 гигабайта = 4096 Мбайт.
4096 / 2 = 2048 картинок поместится на флешке размером 4 гигабайт
Последний вопрос не понял. Посчитать 2 в 32 степени?
var a: array [1..5] of integer;
i, j , count: integer;
repeated : boolean;
begin
for i := 1 to 5 do
begin
write('Введите ', i, '-e число: ');
readln(a[i]);
end;
for i := 1 to 5 do
begin
repeated := false;
for j := 1 to i - 1 do
if (a[i] = a[j]) then
repeated := true;
if repeated then continue;
count := 1;
for j:= i+1 to 5 do
if (a[i]=a[j]) then
inc(count);
writeln('Число ', a[i], ' встречается ', count,' раз');
end;
end.