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

некоторый алфавит содержит 107 символов. Сообщение содержит 15 символов. Определите информац. обьем сообщения в битах

👇
Ответ:
BlazeySpace01
BlazeySpace01
19.11.2020

Дано:

$\mbox{\mathversion{bold} \displaystyle N=107}  символов (мощность (размер) алфавита)

$\mbox{\mathversion{bold} \displaystyle K=15 }  символов (длина сообщения)

Найти:  $\mbox{\mathversion{bold} \displaystyle I }  (информац.объём сообщения, кол-во информации в нём)

Находим количество информации в одном символе.

По сути, это минимальное количество двоичных разрядов, в котором можно хранить один символ нашего алфавита.

Выбирается оно из таблицы степеней двойки (первое значение, не меньшее, чем наше $\mbox{\mathversion{bold} \displaystyle N }), либо через формулу  $\mbox{\mathversion{bold} \displaystyle N=2^{\,i} } (подбирая минимальное подходящее $\mbox{\mathversion{bold} \displaystyle i }, либо решая уравнение через нахождение двоичного логарифма и затем округляя всегда с избытком, вверх).

Пример подбора:

если $\mbox{\mathversion{bold} \displaystyle i=6 }, то  $\mbox{\mathversion{bold} \displaystyle N=2^{\,6}=64 }  (алфавит из 64 символов можно хранить; для нас мало, надо минимум 107)

если $\mbox{\mathversion{bold} \displaystyle i=7 }, то  $\mbox{\mathversion{bold} \displaystyle N=2^{\,7}=128 }  (алфавит из 128 символов можно хранить; для нас достаточно, это даже больше, чем наши 107 символов в алфавите)

Выбираем минимальную подходящую степень= 7  (т.е.  $\mbox{\mathversion{bold} \displaystyle i=7 } бит)

Пример расчёта:

$\mbox{\mathversion{bold} \displaystyle N=2^{\,i} }

$\mbox{\mathversion{bold} \displaystyle 107=2^{\,i} }

отсюда, получаем что:

$\mbox{\mathversion{bold} \displaystyle i=\log_2 107=\frac{\lg 107}{\lg 2}=\frac{\ln 107}{\ln 2}=6{,}741... }

Можно считать одним из трёх : считать сам двоичный логарифм (если логарифм по произвольному основанию есть в вашем калькуляторе- во встроенном в Windows 10, в инженерном виде он есть например), или можно считать отношение десятичных либо натуральных логарифмов (см. дроби в расчёте). Десятичные либо натуральные логарифмы обычно есть в научных калькуляторах.

Получилось дробное значение, значит округляем до целого, но не как обычно, а всегда вверх (то есть, всегда берём целое число, большее чем наш результат). Так округляем потому, что нам нужно получить возможность хранить чуть больше символов, чем есть в нашем алфавите (раз уж ровно 107 не выходит).

Получаем, что:  $\mbox{\mathversion{bold} \displaystyle i=7 } бит

Далее, находим информационный объём сообщения:

$\mbox{\mathversion{bold} \displaystyle I=K\cdot i=15\cdot 7=105 } бит

ответ:  105 бит

4,7(56 оценок)
Открыть все ответы
Ответ:
Donyakotova
Donyakotova
19.11.2020
Var a:array of array of integer;
c:array of array of integer;
ma:array of array of integer;
i,j,n:integer;
begin;
randomize;
readln(n);
setlength(a,n+1); //задаём размерность динамических массивов
setlength(c,n+1);
setlength(ma,n+1);
for i:=1 to n do
begin;
setlength(a[i],n+1);
setlength(c[i],n+1);
setlength(ma[i],n+1);
end;

writeln('Matrix A:');   //генерируем массив псеводслучайных чисел
for i:=1 to n do begin;
 writeln;
  for j:=1 to n do
   begin;
    a[i,j]:=random(10);
    write(a[i,j]:4);
   end;
 end;
writeln;

writeln('Matrix C:'); //аналогично
for i:=1 to n do
 begin;
 writeln;
  for j:=1 to n do
   begin;
    c[i,j]:=random(10);
    write(c[i,j]:4);
   end;
 end;

for i:=1 to n do     //сохраняем матрицу C для транспонации
  for j:=1 to n do
    ma[i,j]:=c[i,j];
    writeln;

writeln('Transpose matrix C:'); //транспонируем C
for i:=1 to n do
 begin;
  writeln;
   for j:=1 to n do
    begin;
     c[i,j]:=ma[j,i];
     write(c[i,j]:4);
    end;
 end;

writeln;
writeln('Final matrix:'); // получаем финальную матрицу
for i:=1 to n do
 begin;
  writeln;
   for j:=1 to n do
    begin;
     ma[i,j]:=2*c[i,j]*a[i,j];
{по свойству дистрибутивности матриц С(A+A)=C*A+C*A=2*C*A}
     write(ma[i,j]:4);
    end;
 end;
end.
4,6(20 оценок)
Ответ:
RakoT1511
RakoT1511
19.11.2020
// PascalABC.NET 3.0, сборка 1144 от 16.01.2016
type
  Point=record
  x,y:real
  end;

function GetPoint(c:char):Point;
begin
  Writeln('Введите координаты точки ',c,':');
  Read(Result.x,Result.y)
end;

function Line(A,B:Point):real;
begin
  Result:=sqrt(sqr(B.x-A.x)+sqr(B.y-A.y))
end;

function SqTriangle(pA,pB,pC:Point):real;
begin
  var a:=Line(pB,pC);
  var b:=Line(pA,pC);
  var c:=Line(pA,pB);
  if (a+b>c) and (a+c>b) and (b+c>a) then begin
    var p:=(a+b+c)/2;
    Result:=sqrt(p*(p-a)*(p-b)*(p-c))
    end
  else Result:=0
end;

begin
  var A:=GetPoint('A');
  var B:=GetPoint('B');
  var C:=GetPoint('C');
  Writeln('Площадь треугольника равна ',SqTriangle(A,B,C))
end.

Тестовое решение:
Введите координаты точки A:
-5 3.18
Введите координаты точки B:
1.45 6.2
Введите координаты точки C:
6 -5.93
Площадь треугольника равна 45.98975
4,4(42 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ