Определите информационный объем документа в килобайтах если известно что в нем 32 страницы на каждой странице по 64строки и каждая строка содержит 56 символов, при этом 1символ кодируется восьмибитовым срособом. Решение
Or - "ИЛИ". Если одно из условий верно, то и все выражение принимает истину [ 0 or 1 = 1 ; 1 or 0 = 1; 1 or 1 = 0, 0 or 0 = 0], где 1 - истина, а 0 - ложь у тебя условие If(k>9) or (k<14) then условие k > 9 выполняется, а значит и все выражение верно Нужно заменить "OR" на "AND" оператор "И". [ 1 and 1 = 1 ] при всех остальных - ложь
Вот код
var k: integer; begin readln(k); if k > 17 then Writeln('ваша оценка 5. Молодец!'); if (k > 13) and (k < 18) then Writeln('ваша оценка 4.'); if(k > 9) and (k < 14) then Writeln('ваша оценка 3.'); if k < 10 then Writeln('ваша оценка 2.'); end.
В сообщении 16+8+4+4=32 символа. Вероятность появления символа А равна 16/32=1/2, символа Б 8/32=1/4, символов В и Г - 1/8. Следовательно, для минимизации длины сообщения (условие "б") самым коротким должен быть символ А, несколько длиннее может быть символ Б и самые длинные - символы В и Г. По этой причине вариант 4) с равной длиной кодов не рассматриваем. Далее, достаточно компактными выглядят коды в варианте 2), но А=0 и В=01 нарушают условие "а" (код 0 является началом кода 01). Остаются варианты 1) и 3) В варианте 1) нарушений условий нет. В варианте 3) код буквы Б 01 является началом кода буквы В 011 и это нарушает условие "а". ответ: 1)
32*64*56*8=917504бит 112 кбайт