Ivanova55878
?>

Для передачи секретного сообщения используются только десятичные цифры. при этом все цифры (не числа) кодируются одинаковым минимально возможным количеством битов. определите информационный объем сообщения (в байтах) длиной в 140 символов. в ответе укажите только число.

Информатика

Ответы

kreon1
Десять цифр можно закодировать в четырех битах, позволяющих хранить 2⁴=16 комбинаций (трех битов мало, они позволят хранить лишь 2³=8 комбинаций).
4 бита - это 1/2 байта (в байте 8 бит). Умножаем 1/2 байта на 140 и получаем необходимый объем, равный 70 байт.
ответ: 70 байт.
metrikajulia
ответ: 1909

Var
 s : String;
 n : Integer;
Function IncS(a : String) : String;
Begin
  a[Length(a)]:=Chr(Ord(a[Length(a)])+1);
  If a[Length(a)]>'D' then
    IncS:=IncS(Copy(a,1,Length(a)-1))+'A'
  else IncS:=a;
end;
Function Check(a : String) : Boolean;
Begin
  Check:=False;
  If (Pos('A',a)>0) then
  Begin
    Delete(a,Pos('A',a),1);
    If (Pos('A',a)>0) then Check:=True;
  end;
end;
Begin
  s:=''; n:=0;
  While s<>'' do
  Begin
  {  Writeln(s);  }
    If Check(s) then Inc(n);
    s:=IncS(s);
  end;
  Writeln(n);
end.
krasnova1977
// PascalABC.NET 3.0, сборка 1073
const
  sb='bcdfgjklmnpqrstvwxz';
  s='Computer programming is a process of computer programs creation';
var
  i,n:integer;
  s1,sn,t:string;
begin
  i:=1;
  while s[i]<>' ' do Inc(i);
  s1:=Copy(s,1,i-1);
  n:=Length(s); i:=n;
  while s[i]<>' ' do Dec(i);
  sn:=Copy(s,i+1,n-i);
  t:='';
  for i:=1 to Length(s1) do
    if Pos(s1[i],sb)>0 then t:=t+s1[i];
  s1:=t;
  t:='';
  for i:=1 to Length(sn) do
    if Pos(sn[i],sb)>0 then t:=t+sn[i];
  sn:=t;
  t:='';
  for i:=1 to Length(s1) do
    if Pos(s1[i],sn)>0 then
      if Pos(s1[i],t)=0 then t:=t+s1[i];
  for i:=1 to Length(t) do Write(t[i],' ');
  Writeln
end.
 
Тестовый прогон:
t r

2. "Нормальное" решение

// PascalABC.NET 3.0, сборка 1073
const
  sb='bcdfgjklmnpqrstvwxz';
  s='Computer programming is a process of computer programs creation';
begin
  var a:=s.ToWords(' ');
  a[0].Intersect(a[a.Length-1]).Where(x->Pos(x,sb)>0).Println(',')
end.

Тестовый прогон:
t,r

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Для передачи секретного сообщения используются только десятичные цифры. при этом все цифры (не числа) кодируются одинаковым минимально возможным количеством битов. определите информационный объем сообщения (в байтах) длиной в 140 символов. в ответе укажите только число.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Борисов
ilds88
alfastore4
batalerka391
Rubber-soul
ирина_Андреевич1634
Adno1578
sharkova1443
gon4arovanat6
ognevasv555
Rjkjneirbyf555
Елена-Семенова
Nefedova1432
admiral-kazan
dianakryukova00