М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
bekker222
bekker222
16.06.2022 17:33 •  Информатика

Каждый сотрудник предприятия получает электронный пропуск, на котором записаны личный код сотрудника, код подразделения и некоторая дополнительная информация. Личный код состоит из 20 букв. Для формирования кодов используется 14 различных букв, каждая из которых может быть заглавной или строчной. Для записи кода на пропуске отведено минимально возможное целое число байт. При этом используют посимвольное кодирование, все символы кодируют одинаковым минимально возможным количеством бит. Код подразделения - целое четырёхзначное число, он записан на пропуске как двоичное число и занимает минимально возможное целое число байт. Всего на пропуске хранится 30 байт данных. Сколько байт выделено для хранения дополнительных сведений об одном сотруднике? В ответе запишите только целое число - количество байт.

👇
Ответ:
LudmilaB
LudmilaB
16.06.2022

Для записи кода используется 14 букв разного регистра, всего их получается 28.

2 ** 1 = 2

2 ** 2 = 4

2 ** 3 = 8

2 ** 4 = 16

2 ** 5 = 32

Для записи символа нам хватит пяти бит.

Если личный код состоит из 20 букв, для его записи нам потребуется 20 * 5 байт= 100 бит.

Байт = 8 бит. Чтобы записать код необходимо 100 / 8 = 12.5 байт

По условию, он записывается на минимальном целом кол-ве байт. округляем необходимое для записи место в большую сторону и получим 13 байт.

13 байт занимает личный код сотрудника

Код подразделения - целое четырёхзначное число. Чтобы записать число от 1000 до 1999 как двоичное, нужно чтобы кодировка вмещала 1000 значений. (не написано что каждая цифра кодируется отдельно)

2 ** 10 = 1024

Для записи числа необходимо 10 бит. 10 бит это 1.25 байт, а значит для записи потребуется 2 байта.

2 байта занимает личный код сотрудника

30 байт - (13 байта на личный код + 2 байта на код подразделения) =

15 байт.

15 байт выделено для хранения дополнительных сведений об одном сотруднике.

4,7(25 оценок)
Открыть все ответы
Ответ:
nataliyadydina
nataliyadydina
16.06.2022
1)
var a:array [1..10] of integer;
      i,sum:integer;
begin
  randomize;
  sum:=0;
  for i:=1 to 10 do
    begin
      a[i]:=random(100)-50;
      write (a[i],' ');
      if a[i] < 0 then sum:=sum+a[i];  
    end;
  writeln;
  writeln ('Summa: ',sum);
  readln;
end.

2)
var a:array [1..10] of integer;
      i,max,index:integer;
begin
  for i:=1 to 10 do
    begin
       write ('A[',i,'] = ');
       readln (a[i]);
    end;
  max:=a[1];
  index:=1;
  for i:=2 to 10 do
    if a[i] > max then
      begin
        max:=a[i];
        index:=i;
      end;
  writeln ('Max: ',max,'.Index: ',index);
  readln;
end.

3)
var a:array [1..10] of integer;
      max,min,i,temp:integer;
begin
  randomize;
  for i:=1 to 10 do
    begin
       a[i]:=random(50);
       write (a[i],' ');
    end;
  writeln;
  max:=1;
  min:=1;
  for i:=2 to 10 do
    if a[i] > a[max] then max:=i else
      if a[i] < min then min:=i;
  writeln ('Max: ',a[max]);
  writeln ('Min: ',a[min]);
  temp:=a[min];
  a[min]:=a[max];
  a[max]:=temp;
  for i:=1 to 10 do write (a[i],' ');
end.
4,6(29 оценок)
Ответ:
hsjsjxn
hsjsjxn
16.06.2022
1)
var 
a: array [1..5] of integer;
i,k:integer;
Begin
Writeln('Перечислите элементы массива: ');For i:=1 to 5 do
read(a[i]);
For i:=1 to 5 do 
If (a[i] > -1) then write(a[i]:2);
End.
2)
var 
a: array [1..5] of integer;
i,k1,k2,max,min:integer;
Begin
min:=MaxInt;
max:=-MaxInt;
Writeln('Перечислите элементы массива: ');
For i:=1 to 5 do 
begin
read(a[i]);
if (a[i] > max) then max:=a[i];
if (a[i] < min) then min:=a[i];
end;
For i:=1 to 5 do 
begin
If (a[i] = max) then inc(k1);
If (a[i] = min) then inc(k2);
end;
If (k1>k2) then writeln('Больше max элементов') 
else writeln('Больше min элементов');
End.
3)
var 
a: array [1..5] of integer;
i,k,x:integer;
Begin
Write ('X = ');
read(x);
Writeln('Перечислите элементы массива: ');
For i:=1 to 5 do begin     read(a[i]);
if (a[i] = x ) then inc(k);
end;  
writeln('kol = ',k) ;
end.
4,5(12 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ