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

Автопарк насчитывает 400 единиц техники. Специальное устройство регистрирует выезд каждого автомобиля, записывая его номер с использованием минимально возможного количества бит, одинакового для каждого. Каков информационный объем сообщения, записанного устройством, после того, как выехало 60 автомобилей? Дано: N=400, K=60
Найти: L*K -?

👇
Ответ:
Dirol3434
Dirol3434
19.06.2022

Чтобы дать 400 единицам техники уникальные номера, нам понадобится использовать 9 бит памяти занимает каждый номер. Разберёмся, почему:

Есть формула N<=2^i, где N - количество объектов, которым надо дать уникальные "коды", а i - длина кода

В нашей задаче N=400

400<=2^i - ближайшее значение i, являющееся решением неравенства будет 9:

400<=2^9

400<=512

Делаем вывод: каждый номер будет записан в 9 битах.

У нас проехало 60 машин, номер каждый весит 9 бит, значит вся информация весит 9*60 бит = 540 бит

4,5(9 оценок)
Открыть все ответы
Ответ:
Элиза5511
Элиза5511
19.06.2022
Запомни: в 1 байте 8 бит, в 1 Кбайте 1024 байт, 1 Мегабайте = 1024 кбайт, 1 Гигабайт = 1024 мегабайт.
Исходя из этого имеем (приведём всё к битам):
1) 5 бит
2) 15 байт = 15*8 бит = 120 бит
3) 1024 килобайт = 1024*1024 байт = 1048576 байт = 1048576 *  8 бит = 8388608 бит
4) 1024 мегабайт = 1024*1024*1024*8 бит = 8589934592 бит
5) 15 килобайт = 15*1024*8 бит = 122880 бит

Таким образом:
5 бит → 15 байт → 15 килобайт → 1024 килобайт → 1024 мегабайт

(хотя здесь и вычислять ничего не нужно - всё итак очевидно и без расчётов)
4,7(54 оценок)
Ответ:
Romabl4
Romabl4
19.06.2022
Непростая задача...

const
  n = 16;

type
  R = record
    v: integer;
    p: integer
  end;
  mR = array[1..n] of R;

function SummOfDigits(n: integer): integer;
{ Сумма цифр в трехзначном числе }
begin
  SummOfDigits := (n div 100) + ((n mod 100) div 10) + (n mod 10)
end;

procedure Swp(var a, b: R);
{ Меняет местами элементы a и b }
var
  t: R;
begin
  t.v := a.v; t.p := a.p;
  a.v := b.v; a.p := b.p;
  b.v := t.v; b.p := t.p
end;

procedure Shell(var a: mR; n: integer);
{ сортировка методом Шелла }
var
  i, j, step: integer;

begin
  step := n div 2;
  while step > 0 do
  begin
    for j := n - step downto 1 do
    begin
      i := j;
      while i <= n - step do
      begin
        if a[i].v > a[i + step].v then Swp(a[i], a[i + step]);
        i := i + step
      end
    end;
    step := step div 2
  end
end;

var
  a: array[1..n] of integer;
  b: mR;
  i: integer;

begin
  Randomize;
  Writeln('*** Исходные элементы массива ***');
  for i := 1 to n do
  begin
    a[i] := Random(900) + 100;
    b[i].v := SummOfDigits(a[i]);
    b[i].p := i;
    Write(a[i]:4)
  end;
  Writeln;
  Shell(b, n);
  Writeln('*** Упорядоченные по возрастанию суммы цифр элементы массива ***');
  for i := 1 to n do
  begin
    Write(a[b[i].p]:4)
  end;
  Writeln
end.

Тестовое решение:

*** Исходные элементы массива ***
 862 244 599 379 595 840 551 151 614 383 185 893 131 172 139 256
*** Упорядоченные по возрастанию суммы цифр элементы массива ***
 131 151 244 172 551 614 840 139 256 185 383 862 595 379 893 599
4,5(65 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ