Составить блок схему program n_18; var n,sum,q: integer; begin write (' n = '); readln (n); writeln; q: = 0; sum: =0 while n> 0 do begin inc (q); sum: = sum + n mod 10 n: = n div 10 end. writeln ('количество цифр: ' , q); writeln (' сумма цифры: 'sum); end.
Задание 1
Исходя из того, что равновероятных событий может быть 24 - количество часов в сутках
Можно использовать формулу:
N = 2^i
Вместо N подставим количестов возможных равновероятных событий:
24 = 2^i
Ближайшая степень, в которую нужно возвести 2, чтобы получилось 24 - это 5
Значит:
i = 5 бит
ответ 5 бит информации несет сообщение о том, что встреча назначена на 11 часов
Задание 2
В 16 системе счисления каждая цифра несет 4 бита информации, тк
N = 2^i
16 = 2^i
i = 4 бит
Задание 3
Для вычисления количества информации в сообщении о неравновероятном событии используют следующую формулу: I=log(2)(1/p) (логарифм по основанию 2)
I - это количество информации, р - вероятность события
Для буквы О формула примет следующий вид, тк р=0,09:
I = log(2)(1/0,09) = log(2)11,11 = 3,5 бит
Для буквы С формула примет следующий вид, тк р=0,045:
I = log(2)(1/0,045) = log(2)22,22 = 4,5 бит
Для буквы М формула примет следующий вид, тк р=0,026:
I = log(2)(1/0,026) = log(2)38,46 = 5,2 бит
Для буквы Х формула примет следующий вид, тк р=0,009:
I = log(2)(1/0,009) = log(2)111,11 = 6,8 бит
Если округлять то получится (округляем всегда в большую сторону в информатике):
4 бит для буквы О
5 бит для буквы С
6 бит для буквы М
7 бит для буквы Х
В условии не указано, для какой именно функции вычислять значения. Я сочинил свою :)
Если тебе нужна другая функция, замени строку y:=(2*sin(x)+7*x*x)/sqrt(x); на то, что тебе нужно.
Program L1e2na_2;
uses crt;
var
x:integer;
y:real;
begin
writeln('++');
writeln('| КАКАЯ-ТО ФУНКЦИЯ |');
writeln('| Вычисление значения функции |');
writeln('| для Х = 1, 2, 3, ... , 10 |');
writeln('++');
writeln();
writeln('++');
writeln('| Результат: |');
writeln('++');
writeln('| X | Y |');
writeln('++');
for x:=1 to 10 do
begin
y:=(2*sin(x)+7*x*x)/sqrt(x);
writeln('| ',x:8,' | ',y:11:3,' | ');
end;
writeln('++');
end.