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

Вычислить сумму нечетных положительных элементов массива x[10] и произведение отрицательных элементов, расположенных после последнего положительного. (оформить в виде блок схемы)

👇
Открыть все ответы
Ответ:
ziminasofa2703
ziminasofa2703
11.01.2020
Будем считать, что появление символов равновероятно.
Первое сообщение содержит х символов, тогда второе сообщение содержит 2,5х символов.
Т. к. количество информации (I), которое содержит сообщение, закодированное с знаковой системы, равно количеству информации, которое несет один символ (i), умноженному на число символов в сообщении, то:
I = x*i1
I = 2,5x*i2
А т. к. количество информации у нас одинаково, то:
x*i1 = 2,5x*i2
i1 = 2,5*i2
2*i1 = 5*i2
А т. к. нам известно, что мощность каждого алфавита не превышает 32, то количество информации, которое несет один символ (i) вычисляется по фомуле: i <= log2(32). Т. к. на каждый символ приходится целое число битов, то i может принимать значения 1, 2, 3, 4, 5 битов.
Подставляя эти значения в формулу соответствия между количеством информации, приходящимся на один символ для первого и второго алфавита 2*i1 = 5*i2, находим, что i1 = 5 и i2 = 2.
Следовательно, мощность первого алфавита равна 2^5 = 32 символа, а второго алфавита равна 2^2 = 4 символа.
4,4(15 оценок)
Ответ:
// PascalABC.NET 3.3, сборка 1540 от 16.09.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n,p:integer;
  var s:string;
  for var a:=1 to 9 do
    for var b:=0 to 9 do
      for var c:=0 to 9 do begin
        n:=100*a+10*b+c;
        s:=(n*n).ToString.Right(3);
        p:=Pos(a.ToString,s);
        if p>0 then begin
          Delete(s,p,1);
          p:=Pos(b.ToString,s);
          if p>0 then begin
            Delete(s,p,1);
            if s=c.ToString then Write(n,'(',n*n,')',' ')
            end
          end
        end
end.

Результат
205(42025) 376(141376) 421(177241) 625(390625) 963(927369)
4,6(44 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ