решение в среде Паскаль:
Var a:array[1..10] of Integer; i,s,m: integer; f,t:real;
begin
s:=0;
writeln('write marks');
For i:=1 to 10 do begin
readln(a[i]);
If i>1 then begin
If a[i-1]=2 then begin
If a[i]<>2 then begin s:=s-2; m:=m-1; end;end;end;
s:=s+a[i];
m:=m+1;
end;
f:=s/m;
t:=Int(f);
Writeln('His or her mark is ', t:2:0);
readln;
end.
А) Если символы равновероятны, то количество информации определяется пл формуле Хартли I = log(2)N = log(2)4 = 2 бита
Б) Если вероятности различны, то используется формула Шеннона I=log(2)(1/p)
I1 = log(2)(1/0,4) ≈ 1,32
I2 = log(2)(1/0,15) ≈ 2,74
I3 = log(2)(1/0,25) = 2
I4 = log(2)(1/0,2) ≈ 2,32
Var
a: array[1..10, 1..10] of integer;
i, j, k: integer;
begin
k := 1;
for i := 1 to 10 do
begin
for j := 1 to 10 do
begin
if(j >= i) then begin
a[i, j] := k;
k += 1;
end
else a[i, j] := 0;
write(a[i, j]:3);
end;
k := 1;
writeln();
end;
<span>end.</span>
Draw animal in AGLO give 90 point