1. два текста содержат одинаковое количество символов. первый текст составлен в алфавите мощностью 8 символов, второй – 16 символов. во сколько раз отличается количество информации в этих текстах?
Сначала надо избавиться от ошибок (пункт №3) иначе не сможем выполнить 1 и 2 пункт задания. Исправляем if N mod 10 k:=N mod 10; на if (N mod 10 < k) then k:=N mod 10; Исправляем N:N div 10; на N:= N div 10;
После исправления ошибок при вводе 537 получим 3 Программа будет работать правильно для любого числа, у которого вторая цифра слева меньше первой цифры, например: 7193
Чтобы программа работала правильно для всех чисел надо изменить это: while N > 10 do на while N > 0 do
После всех исправлений код программы стал таким: var N, k: integer; begin readln(N); k := 9; while N > 10 do begin if (N mod 10 < k) then k := N mod 10; N := N div 10; end; write(k) end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
1. два текста содержат одинаковое количество символов. первый текст составлен в алфавите мощностью 8 символов, второй – 16 символов. во сколько раз отличается количество информации в этих текстах?
8=2^3 => i1 = 3 бита
N2=2^i2
16=2^4 => i2 = 4 бита
Т.к. количество текста k одинаковое, то
(k*i1)/(k*i2)=i1/i2=3/4
ответ: в 3/4 раз