1) N=2^b
N=32
32=2^b
b=5 бит
2) N=8
8=2^b
b=3 бит
I=30*3=90 бит содержит сообщение
3) I=30 байт=240 бит
S=40 символов
I=S*b
240=40*b
b=240/40=6 бит
N=2^b
N=2^6=64 символа в алфавите
Var
a:array[1..100] of integer;
i:integer;
c,e:real;
begin
for i:=1 to 100 do begin
a[i]:=i;
e:=a[i] div 2;
c:=a[i]/2;
if e=c then
write(a[i],' ');
end;
for i:=100 downto 1 do
begin
a[i]:=i;
e:=a[i] div 2;
c:=a[i]/2;
if e=c then
write(a[i],' ');
end;
<span>end.</span>
// PascalABC.NET 3.1, сборка 1201 от 18.03.2016
begin
var a:=ArrRandom(ReadInteger('n='),-110,110);
a.Println;
var max2:=sqr(a.Max);
for var i:=0 to a.Length-1 do
if a[i]<=0 then a[i]*=max2;
a.Println
end.
<u><em>Тестовое решение:</em></u>
<span>n= 10
52 -62 106 -110 33 87 46 107 -62 6
52 -709838 106 -1259390 33 87 46 107 -709838 6</span>
Var
a, b, S, c, alpha, betta, gamma, H, P: real;
x, ar, br, gr: real;{alpha, beta. gamma в радианах}
begin
write('Введите длины двух сторон треугольника и площадь: ');
readln(a, b, S);
x := 2 * S / (a * b);
if x > 1 then writeln('Такой треугольник невозможен')
else
begin
gr := ArcSin(x);
c := Sqrt(Sqr(a) + Sqr(b) - 2 * a * b * Cos(gr));
P := a + b + c;
ar := ArcSin(a * Sin(gr) / c);
br := Pi - (ar + gr);
H := b * Sin(ar);
alpha := ar * 180 / Pi;
betta := br * 180 / Pi;
gamma := 180 - (alpha + betta);
writeln('Решение треугольника');
writeln('a=', a, ', b=', b, ', c=', c:0:5);
writeln('Alpha=', alpha:0:2, ', Betta=', betta:0:2, ', Gamma=', gamma:0:2);
writeln('P=', P:0:5, ', H=', H:0:5, ', S=', S)
end
end.
Тестовое решение:
Введите длины двух сторон треугольника и площадь: 3 4 6
Решение треугольника
a=3, b=4, c=5.00000
Alpha=36.87, Betta=53.13, Gamma=90.00
P=12.00000, H=2.40000, S=6
Информатика- пример действия с информацией- обработать